AX: VoiceOver does not read aria-expanded attribute on controls in Safari
https://bugs.webkit.org/show_bug.cgi?id=134527

Reviewed by Mario Sanchez Prada.

Expose whether the ARIA expanded property is present or not.

* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilitySupportsARIAExpanded]):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170753 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Possible crash in IconDatabase in WebCore::IconDatabase::dispatchDidRemoveAllIconsOnMainThread
<rdar://problem/17437687> and https://bugs.webkit.org/show_bug.cgi?id=134517

Reviewed by Eric Carlson.

Source/WebCore:
Since WebCore::IconDatabase is not RefCounted there’s no obvious way to keep it alive until it is
truly no longer needed.

This isn’t generally a problem because they are usually a singleton that lasts the lifetime of the process.

In the WebKit2 case, WebCore::IconDatabases can come and go as their owning WebIconDatabases come and go.

So we can rely on WebIconDatabase to handle the lifetime appropriately.

* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::close): If the database is actually closed, notify the client.
(WebCore::IconDatabase::IconDatabase):
(WebCore::IconDatabase::isOpen): Take into account whether there’s any main thread callbacks, plus what
  is covered by isOpenBesidesMainThreadCallbacks.
(WebCore::IconDatabase::isOpenBesidesMainThreadCallbacks): Take into account whether the sync thread
  is still running and whether or not the database file is still open.
(WebCore::IconDatabase::checkClosedAfterMainThreadCallback): Checks to see if the database has just
  become 100% closed and - if so - notify the client.
(WebCore::IconDatabase::dispatchDidImportIconURLForPageURLOnMainThread): Updated to increment the main thread
  callback count and to call checkClosedAfterMainThreadCallback when done.
(WebCore::IconDatabase::dispatchDidImportIconDataForPageURLOnMainThread): Ditto.
(WebCore::IconDatabase::dispatchDidRemoveAllIconsOnMainThread): Ditto.
(WebCore::IconDatabase::dispatchDidFinishURLImportOnMainThread): Ditto.
* loader/icon/IconDatabase.h:

* loader/icon/IconDatabaseClient.h:
(WebCore::IconDatabaseClient::didClose): Added. For the IconDatabase to tell its client it is 100% closed.

Source/WebKit2:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::~WebContext): Instead of directly deref’ing the WebIconDatabase, ask it to
  deref itself when appropriate.

* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::WebIconDatabase):
(WebKit::WebIconDatabase::didClose): If this WebIconDatabase is supposed to deref itself when
  appropriate, do so now.
(WebKit::WebIconDatabase::derefWhenAppropriate): If the WebCore::IconDatabase is still open then
  defer this deref.
* UIProcess/WebIconDatabase.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170754 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Stop using EncoderAdapter/DecoderAdapter for FormData
https://bugs.webkit.org/show_bug.cgi?id=134571

Reviewed by Andreas Kling.

Source/WebCore:
* WebCore.exp.in:
* platform/network/FormData.cpp:
(WebCore::encodeElement): Deleted.
(WebCore::decodeElement): Deleted.
(WebCore::FormData::encode): Deleted.
(WebCore::FormData::decode): Deleted.
* platform/network/FormData.h:
(WebCore::FormDataElement::encode):
(WebCore::FormDataElement::decode):
(WebCore::FormData::encode):
(WebCore::FormData::decode):

Source/WebKit2:
* Shared/Network/NetworkResourceLoadParameters.cpp:
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170755 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Get rid of DecoderAdapter and EncoderAdapter
https://bugs.webkit.org/show_bug.cgi?id=134598

Reviewed by Andreas Kling.

* CMakeLists.txt:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/WebPage/DecoderAdapter.cpp: Removed.
* WebProcess/WebPage/DecoderAdapter.h: Removed.
* WebProcess/WebPage/EncoderAdapter.cpp: Removed.
* WebProcess/WebPage/EncoderAdapter.h: Removed.
* WebProcess/WebPage/WebPage.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@170756 268f45cc-cd09-0410-ab3c-d52691b4dbfc