darin@apple.com [Mon, 15 Jun 2015 22:01:58 +0000 (22:01 +0000)]
REGRESSION (r182215): Reproducible crash at drawsvg.org due to reentrant layout
https://bugs.webkit.org/show_bug.cgi?id=145964
Reviewed by Simon Fraser.
Source/WebCore:
Test: svg/as-object/mutate-on-load.html
* page/FrameView.cpp:
(WebCore::FrameView::forceLayoutParentViewIfNeeded): Don't do a synchronous layout here,
because it can lead indirectly to unwanted layout reentrancy. Instead schedule a layout.
LayoutTests:
* svg/as-object/mutate-on-load-expected.html: Added.
* svg/as-object/mutate-on-load.html: Added.
* svg/as-object/resources/embedded-mutates-on-load.svg: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185567
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
msaboff@apple.com [Mon, 15 Jun 2015 21:26:08 +0000 (21:26 +0000)]
JIT bug - fails when inspector closed, works when open
https://bugs.webkit.org/show_bug.cgi?id=145243
Reviewed by Oliver Hunt.
Source/JavaScriptCore:
We need to provide the Arguments object as the base when creating the HeapLocation for
GetFromArguments and PutToArguments. Otherwise we endup creating a HeapLocation for
any arguments object, not the one we need.
* dfg/DFGClobberize.h:
(JSC::DFG::clobberize):
LayoutTests:
New regression test.
* js/regress-145243-expected.txt: Added.
* js/regress-145243.html: Added.
* js/script-tests/regress-145243.js: Added.
(bar):
(foo):
(test):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185566
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Mon, 15 Jun 2015 19:29:06 +0000 (19:29 +0000)]
[WK2] BrowsingContextController.loadData API is leaking Navigation objects
https://bugs.webkit.org/show_bug.cgi?id=145977
<rdar://problem/
21305706>
Reviewed by Darin Adler.
BrowsingContextController.loadData API was leaking Navigation objects.
The issue was due to WebPageProxy::loadData() creating a Navigation
object but not passing along the navigationID to the WebProcess when
sending the Messages::WebPage::LoadData IPC. As a result, the
WebProcess would use 0 as navigationID and we would end up creating a
new Navigation object later on for the same navigation.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadData):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadData):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185563
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Jun 2015 19:16:51 +0000 (19:16 +0000)]
Web Inspector: Improve some cases of "Object?" Type Annotations
https://bugs.webkit.org/show_bug.cgi?id=145954
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-15
Reviewed by Timothy Hatcher.
* UserInterface/Views/TypeTokenView.js:
(WebInspector.TypeTokenView.prototype._displayTypeName):
The TypeSet inclusions cover all types, so we can use the leastCommonAncestor
name as long as the type set is just object or object and null/undefined.
If the typeset includes other primitives then it will gracefully go down
below to become something like Object or (many).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185562
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Jun 2015 18:55:39 +0000 (18:55 +0000)]
Media Session: Active participating elements can change while being iterated
https://bugs.webkit.org/show_bug.cgi?id=145978
Patch by Matt Rajca <mrajca@apple.com> on 2015-06-15
Reviewed by Alex Christensen.
* Modules/mediasession/MediaSession.cpp:
(WebCore::MediaSession::togglePlayback): Iterate through a copy of m_activeParticipatingElements since its contents
can be modified in the loop.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185560
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
joepeck@webkit.org [Mon, 15 Jun 2015 18:50:20 +0000 (18:50 +0000)]
Unreviewed, gardening for Windows.
* platform/win/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185559
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Mon, 15 Jun 2015 18:39:20 +0000 (18:39 +0000)]
AX: no accessibility support for details element
https://bugs.webkit.org/show_bug.cgi?id=131111
Reviewed by Darin Adler.
Source/WebCore:
Add accessibility support for Mac for details element by:
1) Returning new subroles for <details> and <summary>
2) Exposing isExpanded property for <details> element.
Test: platform/mac/accessibility/details-summary.html
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::supportsARIAPressed):
(WebCore::AccessibilityObject::supportsExpanded):
(WebCore::AccessibilityObject::isExpanded):
(WebCore::AccessibilityObject::supportsARIAExpanded): Deleted.
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::canvasHasFallbackContent):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilitySupportsARIAExpanded]):
(-[WebAccessibilityObjectWrapper accessibilityIsExpanded]):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
(createAccessibilityRoleMap):
(-[WebAccessibilityObjectWrapper subrole]):
* html/HTMLDetailsElement.h:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):
LayoutTests:
* platform/mac/accessibility/details-summary-expected.txt: Added.
* platform/mac/accessibility/details-summary.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185558
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 15 Jun 2015 18:08:11 +0000 (18:08 +0000)]
REGRESSION (r185298): Databases service has Web Content service’s entitlements
https://bugs.webkit.org/show_bug.cgi?id=145980
Reviewed by Darin Adler.
* Configurations/DatabaseService.xcconfig: Set WK_XPC_SERVICE_IOS_ENTITLEMENTS_BASE to
Databases-iOS.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185557
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jonlee@apple.com [Mon, 15 Jun 2015 18:07:02 +0000 (18:07 +0000)]
[WK2] Add allowsPictureInPictureMediaPlayback
https://bugs.webkit.org/show_bug.cgi?id=145901
rdar://problem/
21349851
Reviewed by Anders Carlsson.
Replace _allowsAlternateFullscreen with allowsPictureInPictureMediaPlayback.
* UIProcess/API/Cocoa/WKWebViewConfiguration.h: Add allowsPictureInPictureMediaPlayback.
* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration init]): Remove _allowsAlternateFullscreen.
(-[WKWebViewConfiguration copyWithZone:]): Replace the variable.
(-[WKWebViewConfiguration _allowsAlternateFullscreen]): Deleted.
(-[WKWebViewConfiguration _setAllowsAlternateFullscreen:]): Deleted.
* UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Remove the SPI.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]): Update to use the new API.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185556
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Jun 2015 17:23:00 +0000 (17:23 +0000)]
Source/WebCore:
[Content Extensions] Limit number of rules.
https://bugs.webkit.org/show_bug.cgi?id=145663
Patch by Alex Christensen <achristensen@webkit.org> on 2015-06-15
Reviewed by Benjamin Poulain.
Added an API test to make sure that parsing fails when there are too many rules.
* contentextensions/ContentExtensionError.cpp:
(WebCore::ContentExtensions::contentExtensionErrorCategory):
* contentextensions/ContentExtensionError.h:
* contentextensions/ContentExtensionParser.cpp:
(WebCore::ContentExtensions::loadEncodedRules):
Fail to parse a content extension with more than 50000 rules.
Tools:
[Content Extensions] Make max NFA size and max rule count user defaults.
https://bugs.webkit.org/show_bug.cgi?id=145663
Patch by Alex Christensen <achristensen@webkit.org> on 2015-06-15
Reviewed by Benjamin Poulain.
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::TEST_F):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185555
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Mon, 15 Jun 2015 16:57:01 +0000 (16:57 +0000)]
-[WKWebView evaluateJavaScript] provides a misleading error when the return cannot be serialized
https://bugs.webkit.org/show_bug.cgi?id=145900
Reviewed by Sam Weinig.
Source/WebCore:
* English.lproj/Localizable.strings:
Source/WebKit2:
We used to conflate to cases: (1) when there was a JavaScript exception, and
(2) when the result could not be serialized for IPC. Turns out that it was quite
misleading!
* UIProcess/API/C/WKPage.cpp:
(WKPageRunJavaScriptInMainFrame):
* UIProcess/API/Cocoa/WKError.h:
* UIProcess/API/Cocoa/WKError.mm:
(localizedDescriptionForErrorCode):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView evaluateJavaScript:completionHandler:]):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::runJavaScriptInMainFrame):
(WebKit::WebPageProxy::scriptValueCallback):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::runJavaScriptInMainFrame):
* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_run_javascript):
(resourcesStreamReadCallback):
Tools:
* TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewEvaluateJavaScript.mm:
(TEST): Added tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185554
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Mon, 15 Jun 2015 16:36:24 +0000 (16:36 +0000)]
[SOUP] Custom URI schemes don't work for requests containing a fragment identifier
https://bugs.webkit.org/show_bug.cgi?id=145969
Reviewed by Sergio Villar Senin.
Source/WebCore:
For URIs like foo:bar#baz, what the custom protocol manager
receives in the UI process is foo:bar, so the user can't handle fragments.
* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::updateSoupRequest): If the SoupRequest
is a WebKitSoupRequestGeneric, call
webkitSoupRequestGenericSetRequest with the ResourceRequest.
* platform/network/soup/WebKitSoupRequestGeneric.cpp:
(webkitSoupRequestGenericSetRequest):
(webkitSoupRequestGenericGetRequest):
* platform/network/soup/WebKitSoupRequestGeneric.h:
Source/WebKit2:
Use the WebKitSoupRequestGeneric request instead of creating a new one
from the SoupRequest URI, since that is the network one and doesn't
contain the fragment identifier part.
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
(WebKit::CustomProtocolManagerImpl::start):
Tools:
Add a test case to the custom URI schemes unit test.
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
(testWebContextURIScheme):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185553
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Mon, 15 Jun 2015 15:43:43 +0000 (15:43 +0000)]
[EFL] Make send/receive messages to communicate the Web and UI Processes using Injected Bundle.
https://bugs.webkit.org/show_bug.cgi?id=145685
Patch by Hyungwook Lee <hyungwook.lee@navercorp.com> on 2015-06-15
Reviewed by Gyuyoung Kim.
To have extensible port specific API facility using Injected Bundle,
we need to load libewebkit_extension_manager.so in default that is same as what gtk port does.
* UIProcess/API/efl/ewk_context.cpp:
(EwkContext::EwkContext):
(EwkContext::~EwkContext):
(EwkContext::findOrCreateWrapper):
(bundlePathForExtension):
(EwkContext::create): Deleted.
* UIProcess/API/efl/ewk_context_private.h:
* WebProcess/efl/ExtensionManagerEfl.cpp:
(WebKit::ExtensionManagerEfl::initialize):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185552
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Mon, 15 Jun 2015 15:34:02 +0000 (15:34 +0000)]
[SOUP] Move WebKitSoupRequestGeneric to platform layer
https://bugs.webkit.org/show_bug.cgi?id=145968
Reviewed by Sergio Villar Senin.
Source/WebCore:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* platform/network/soup/WebKitSoupRequestGeneric.cpp: Renamed from Source/WebKit2/WebProcess/soup/WebKitSoupRequestGeneric.cpp.
(webkitSoupRequestGenericFinalize):
(webkit_soup_request_generic_init):
(webkitSoupRequestGenericSendAsync):
(webkitSoupRequestGenericSendFinish):
(webkitSoupRequestGenericGetContentLength):
(webkitSoupRequestGenericGetContentType):
(webkit_soup_request_generic_class_init):
(webkitSoupRequestGenericSetContentLength):
(webkitSoupRequestGenericSetContentType):
* platform/network/soup/WebKitSoupRequestGeneric.h: Renamed from Source/WebKit2/WebProcess/soup/WebKitSoupRequestGeneric.h.
* platform/network/soup/WebKitSoupRequestGenericClient.h: Renamed from Source/WebKit2/WebProcess/soup/WebKitSoupRequestGenericClient.h.
Source/WebKit2:
* PlatformEfl.cmake: Remove WebKitSoupRequestGeneric.
* PlatformGTK.cmake: Ditto.
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185551
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 15 Jun 2015 13:09:39 +0000 (13:09 +0000)]
[GTK] Fix deprecated-register warning in the generated WebKitMarshal.cpp
https://bugs.webkit.org/show_bug.cgi?id=145922
Reviewed by Carlos Garcia Campos.
* gtk/jhbuild.modules:
* gtk/patches/glib-warning-fix.patch: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185550
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Mon, 15 Jun 2015 11:20:34 +0000 (11:20 +0000)]
Fix unused private field warning in PageBanner.h
https://bugs.webkit.org/show_bug.cgi?id=145925
Reviewed by Darin Adler.
* WebProcess/WebPage/PageBanner.cpp:
(WebKit::PageBanner::~PageBanner):
* WebProcess/WebPage/PageBanner.h: Initialize m_type, m_webPage, m_mouseDownInBanner, and m_isHidden here instead of in the constructor.
* WebProcess/WebPage/mac/PageBannerMac.mm: Use PLATFORM(MAC) instead of !PLATFORM(IOS), they are same in objc files.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185549
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
carlosgc@webkit.org [Mon, 15 Jun 2015 11:09:08 +0000 (11:09 +0000)]
[SOUP] Make WebKitSoupRequestGeneric independent from CustomProtocolManagerImpl
https://bugs.webkit.org/show_bug.cgi?id=145966
Reviewed by Sergio Villar Senin.
Add WebKitSoupRequestGenericClient with start and finish methods,
that are implemented by WebKitSoupRequestGeneric.
This allows us to move WebKitSoupRequestGeneric to platform layer.
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
(WebKit::CustomProtocolManagerImpl::registerScheme):
(WebKit::CustomProtocolManagerImpl::start):
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h:
* WebProcess/soup/WebKitSoupRequestGeneric.cpp:
(webkitSoupRequestGenericSendAsync):
(webkitSoupRequestGenericSendFinish):
* WebProcess/soup/WebKitSoupRequestGeneric.h:
* WebProcess/soup/WebKitSoupRequestGenericClient.h: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185548
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Mon, 15 Jun 2015 04:13:02 +0000 (04:13 +0000)]
Fixed the build.
* mac/postprocess-framework-headers.sh:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185547
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mcatanzaro@igalia.com [Sun, 14 Jun 2015 21:10:13 +0000 (21:10 +0000)]
Format string misuse in DatabaseProcessIDBConnection.cpp and UniqueIDBDatabaseBackingStoreSQLite.cpp
https://bugs.webkit.org/show_bug.cgi?id=145960
Reviewed by Darin Adler.
Use PRIu64 and PRIi64 to print uint64_t and int64_t, respectively. These things are
different types on x86_64 Linux (unsigned long) and on Mac (unsigned long long).
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata):
(WebKit::DatabaseProcessIDBConnection::deleteDatabase):
(WebKit::DatabaseProcessIDBConnection::openTransaction):
(WebKit::DatabaseProcessIDBConnection::beginTransaction):
(WebKit::DatabaseProcessIDBConnection::commitTransaction):
(WebKit::DatabaseProcessIDBConnection::resetTransaction):
(WebKit::DatabaseProcessIDBConnection::rollbackTransaction):
(WebKit::DatabaseProcessIDBConnection::changeDatabaseVersion):
(WebKit::DatabaseProcessIDBConnection::createObjectStore):
(WebKit::DatabaseProcessIDBConnection::deleteObjectStore):
(WebKit::DatabaseProcessIDBConnection::clearObjectStore):
(WebKit::DatabaseProcessIDBConnection::createIndex):
(WebKit::DatabaseProcessIDBConnection::deleteIndex):
(WebKit::DatabaseProcessIDBConnection::putRecord):
(WebKit::DatabaseProcessIDBConnection::getRecord):
(WebKit::DatabaseProcessIDBConnection::count):
(WebKit::DatabaseProcessIDBConnection::deleteRange):
(WebKit::DatabaseProcessIDBConnection::openCursor):
(WebKit::DatabaseProcessIDBConnection::cursorAdvance):
(WebKit::DatabaseProcessIDBConnection::cursorIterate):
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteObjectStore):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::clearObjectStore):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteIndex):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::generateKeyNumber):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::keyExistsInObjectStore):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::uncheckedPutIndexRecord):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRecord):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRecordFromObjectStore):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRangeRecordFromObjectStore):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::advanceCursor):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185546
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mitz@apple.com [Sun, 14 Jun 2015 21:00:41 +0000 (21:00 +0000)]
[Cocoa] Clean up postprocess-framework-headers.sh
https://bugs.webkit.org/show_bug.cgi?id=145962
Reviewed by Darin Adler.
* mac/postprocess-framework-headers.sh: Gather all the sed options in a variable, and then
run sed only once on each header. Also, correctly exit with the sed return value if it
fails.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185545
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
agomez@igalia.com [Sun, 14 Jun 2015 08:37:01 +0000 (08:37 +0000)]
[GTK] Web Inspector: Update icon so Rendering Frames timeline distinguish between layout and painting
https://bugs.webkit.org/show_bug.cgi?id=145956
Reviewed by Carlos Garcia Campos.
* UserInterface/Images/gtk/TimelineRecordPaint.svg:
Changed to use green color.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185544
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Sun, 14 Jun 2015 06:57:55 +0000 (06:57 +0000)]
AX: WebKit exposes all Ruby Text as Unknown (Japanese EPUB accessibility blocker)
https://bugs.webkit.org/show_bug.cgi?id=141303
Unreviewed. Move ruby tests to Mac platform only, since they don't apply to other platforms.
* accessibility/ruby-hierarchy-roles-expected.txt: Removed.
* accessibility/ruby-hierarchy-roles.html: Removed.
* platform/mac/accessibility/ruby-hierarchy-roles.html: Copied from LayoutTests/accessibility/ruby-hierarchy-roles.html.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185543
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cdumez@apple.com [Sun, 14 Jun 2015 04:53:14 +0000 (04:53 +0000)]
[WK2] API::Navigation objects are leaked on history navigation to HistoryItems in PageCache
https://bugs.webkit.org/show_bug.cgi?id=145948
Reviewed by Darin Adler.
Source/WebCore:
API::Navigation objects were leaked on history navigation to
HistoryItems in PageCache. In such case, we would create 2 Navigation
objects instead of 1 and the first one would be leaked. The reason
we create the second one is because we fail to pass along the
navigationID from the UIProcess to the WebProcess and then back to the
UIProcess. On the IPC back to the UIProcess, the navigationID ends up
being 0 so the UIProcess creates a new Navigation object, thinking that
the load was triggered by the WebContent process.
We now pass along the navigationID, even if the HistoryItem is in the
PageCache and we end up reusing the cached DocumentLoader, instead of
creating a new one. A new updateCachedDocumentLoader() delegate is
added to the FrameLoaderClient, similarly to the pre-existing
createDocumentLoader() but for the case where the DocumentLoader gets
reused.
* loader/EmptyClients.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadDifferentDocumentItem):
* loader/FrameLoaderClient.h:
Source/WebKit/mac:
Add empty implementation for new
FrameLoaderClient::updatedCachedDocumentLoader().
* WebCoreSupport/WebFrameLoaderClient.h:
Source/WebKit/win:
Add empty implementation for new
FrameLoaderClient::updatedCachedDocumentLoader().
* WebCoreSupport/WebFrameLoaderClient.h:
Source/WebKit2:
API::Navigation objects were leaked on history navigation to
HistoryItems in PageCache. In such case, we would create 2 Navigation
objects instead of 1 and the first one would be leaked. The reason
we create the second one is because we fail to pass along the
navigationID from the UIProcess to the WebProcess and then back to the
UIProcess. On the IPC back to the UIProcess, the navigationID ends up
being 0 so the UIProcess creates a new Navigation object, thinking that
the load was triggered by the WebContent process.
We now pass along the navigationID, even if the HistoryItem is in the
PageCache and we end up reusing the cached DocumentLoader, instead of
creating a new one. A new updateCachedDocumentLoader() delegate is
added to the FrameLoaderClient, similarly to the pre-existing
createDocumentLoader() but for the case where the DocumentLoader gets
reused.
* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::updateCachedDocumentLoader):
* WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::goForward):
(WebKit::WebPage::goBack):
(WebKit::WebPage::goToBackForwardItem):
(WebKit::WebPage::updateCachedDocumentLoader):
* WebProcess/WebPage/WebPage.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185542
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
barraclough@apple.com [Sun, 14 Jun 2015 00:24:43 +0000 (00:24 +0000)]
Add private API to force page to always run at foreground priority
https://bugs.webkit.org/show_bug.cgi?id=145946
<rdar://problem/
21267221>
Reviewed by Anders Carlsson.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
- copy _alwaysRunsAtForegroundPriority to WebPageConfiguration.
* UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration copyWithZone:]):
(-[WKWebViewConfiguration _alwaysRunsAtForegroundPriority]):
(-[WKWebViewConfiguration _setAlwaysRunsAtForegroundPriority:]):
- added _alwaysRunsAtForegroundPriority.
* UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
- added _alwaysRunsAtForegroundPriority.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
- initialize m_alwaysRunsAtForegroundPriority.
(WebKit::WebPageProxy::updateActivityToken):
- if m_alwaysRunsAtForegroundPriority is set always take the foreground activity token.
* UIProcess/WebPageProxy.h:
- added m_alwaysRunsAtForegroundPriority, alwaysRunsAtForegroundPriority.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185541
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 13 Jun 2015 20:42:04 +0000 (20:42 +0000)]
Web Inspector: console.table() with a list of objects no longer works
https://bugs.webkit.org/show_bug.cgi?id=145952
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-13
Reviewed by Timothy Hatcher.
Source/JavaScriptCore:
* inspector/InjectedScriptSource.js:
(InjectedScript.RemoteObject.prototype._generatePreview):
Calling generatePreview again was actually starting with a preview
of the current object instead of the sub-value. Go down the other
path that correctly generates sub-previews. Leave filtering on the
backend unimplemented, which we were already ignoring.
Source/WebInspectorUI:
* UserInterface/Views/ConsoleMessageView.js:
(WebInspector.ConsoleMessageView.prototype._appendMessageTextAndArguments):
(WebInspector.ConsoleMessageView.prototype._formatParameterAsTable):
Don't allow expanding a cosole.table message, and don't output the total
object even if the table preview was lossless, as the experience is poor.
LayoutTests:
* inspector/console/console-api.html:
* inspector/console/console-table-expected.txt: Added.
* inspector/console/console-table.html:
Add a similiar console API test all about console.table().
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185540
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Sat, 13 Jun 2015 19:28:38 +0000 (19:28 +0000)]
Add a script to post new OS X builds to perf dashboard
https://bugs.webkit.org/show_bug.cgi?id=145955
Reviewed by Darin Adler.
Added a new script pull-osx.py and relaxed the restrictions on commits accepted by the dashboard API.
* public/api/report-commits.php:
(main): Allow more characters than [A-Za-z0-9] in revision. e.g. "10.10.3 14D136".
Also allow commits without the author, commit time, and commit message as OS versions do not have those.
* tools/pull-osx.py: Added.
(main): Fetch the list of builds from a website and submit them per submissionSize with submissionInterval.
Once all builds have been submitted, wait for a long time as specified by fetchInterval.
(setup_auth): Sets up basic or digest auth to access the dashboard.
(fetch_available_builds): Fetches and parses the XML document from an internal website.
(textContent): A helper function to get the text content out of a XML node.
(submit_commits): Submits commits to the perf dashboard.
* tools/pull-svn.py:
(fetch_commit):
* tools/util.py: Extracted submit_commits and text_content from pull-svn.py to be reused in pull-osx.py.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185539
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Sat, 13 Jun 2015 15:25:20 +0000 (15:25 +0000)]
[EFL] Mark fast/forms/select-element-focus-ring.html to Missing
Unreviwed, gardening for EFL port.
* platform/efl/TestExpectations: The test was added only for Mac port.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185538
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Sat, 13 Jun 2015 09:09:53 +0000 (09:09 +0000)]
[Streams API] ReadableJSStream should handle promises returned by JS source start callback
https://bugs.webkit.org/show_bug.cgi?id=145792
Source/JavaScriptCore:
Reviewed by Darin Adler.
Added support for JSFunction implemented by std::function.
* runtime/JSFunction.cpp:
(JSC::getNativeExecutable): Refactored code to share it with the two JSFunction::create
(JSC::JSFunction::create):
(JSC::runStdFunction):
* runtime/JSFunction.h: Added std::function based JSFunction::create prototype.
* runtime.JSPromise.h:
Source/WebCore:
Reviewed by Darin Adler.
Covered by rebased tests.
When calling start callback, the returned value is checked.
If it is not a promise, we do as if it is a resolved promise.
If it is a promise, we call its then() method with two resolve/reject JS functions.
* Modules/streams/ReadableStream.cpp:
* bindings/js/ReadableJSStream.cpp:
(WebCore::ReadableJSStream::invoke): Returns a JSPromise* if any is returned by the JS source callback.
(WebCore::thenPromise): Utility method to call the promise.
(WebCore::createStartResultFulfilledFunction): The promise resolve callback.
(WebCore::ReadableJSStream::doStart): Calls thenPromise if a JSPromise* is returned by invoke.
(WebCore::ReadableJSStream::ReadableJSStream):
* bindings/js/ReadableJSStream.h:
LayoutTests:
Reviewed by Darin Adler.
Rebasing expectations, and removing timeouts for tests that no longer timeout.
* streams/reference-implementation/readable-stream-expected.txt:
* streams/reference-implementation/readable-stream.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185537
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Sat, 13 Jun 2015 08:29:23 +0000 (08:29 +0000)]
AX: WebKit exposes all Ruby Text as Unknown (Japanese EPUB accessibility blocker)
https://bugs.webkit.org/show_bug.cgi?id=141303
Patch by Andres Gonzalez <agonzalez334@nc.rr.com> on 2015-06-13
Reviewed by Chris Fleizach.
Source/WebCore:
Test: accessibility/ruby-hierarchy-roles.html
* accessibility/AccessibilityObject.h:
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):
* accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
(createAccessibilityRoleMap):
(-[WebAccessibilityObjectWrapper subrole]):
LayoutTests:
* accessibility/ruby-hierarchy-roles-expected.txt: Added.
* accessibility/ruby-hierarchy-roles.html: Added.
* platform/mac-mavericks/accessibility/ruby-hierarchy-roles-expected.txt: Added.
* platform/mac/accessibility/ruby-hierarchy-roles-expected.txt: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185536
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Sat, 13 Jun 2015 08:16:24 +0000 (08:16 +0000)]
Perf dashboard's v2 UI shouldn't hide auto-detected outliers
https://bugs.webkit.org/show_bug.cgi?id=145940
Reviewed by Darin Adler.
Don't fallback to the default strategies for moving averages and envelope when one is not specified.
Also deleted the code to mark points outside the envelop as outliers.
* public/v2/app.js:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185535
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Sat, 13 Jun 2015 06:31:31 +0000 (06:31 +0000)]
AX: iOS: after updating control, VoiceOver speaks aria-expanded states reversed (says "collapsed" when "expanded")
https://bugs.webkit.org/show_bug.cgi?id=145943
Reviewed by Darin Adler.
iOS Accessibility platform needs to be notified of when aria expanded changes.
* accessibility/ios/AXObjectCacheIOS.mm:
(WebCore::AXObjectCache::postPlatformNotification):
* accessibility/ios/WebAccessibilityObjectWrapperIOS.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper postValueChangedNotification]):
(-[WebAccessibilityObjectWrapper postExpandedChangedNotification]):
(-[WebAccessibilityObjectWrapper postScrollStatusChangeNotification]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185534
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
cfleizach@apple.com [Sat, 13 Jun 2015 06:04:25 +0000 (06:04 +0000)]
AX:ARIA Toggle buttons aren't properly conveyed on iOS using VoiceOver
https://bugs.webkit.org/show_bug.cgi?id=145949
Reviewed by Darin Adler.
Source/WebCore:
Expose pressed state information to the iOS platform AX API.
Test: Updated inspector-protocol/dom/getAccessibilityPropertiesForNode.html
There was a FIXME for this issue in that test: https://bugs.webkit.org/show_bug.cgi?id=129830
* accessibility/AccessibilityNodeObject.cpp:
(WebCore::AccessibilityNodeObject::isPressed):
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::classList):
(WebCore::AccessibilityObject::supportsARIAPressed):
(WebCore::AccessibilityObject::supportsARIAExpanded):
* accessibility/AccessibilityObject.h:
* accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
(-[WebAccessibilityObjectWrapper accessibilityARIALiveRegionIsAtomic]):
(-[WebAccessibilityObjectWrapper accessibilitySupportsARIAPressed]):
(-[WebAccessibilityObjectWrapper accessibilityIsPressed]):
(-[WebAccessibilityObjectWrapper accessibilitySupportsARIAExpanded]):
LayoutTests:
* inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
* inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185533
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Sat, 13 Jun 2015 03:52:06 +0000 (03:52 +0000)]
Purge PassRefPtr in JavaScriptCore - 2
https://bugs.webkit.org/show_bug.cgi?id=145834
Reviewed by Darin Adler.
Source/JavaScriptCore:
As a step to remove PassRefPtr, this patch cleans up PassRefPtr as much as possible
in JavaScriptCore.
* API/JSClassRef.cpp:
(OpaqueJSClass::create):
* API/JSClassRef.h:
* debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::callerFrame):
* debugger/DebuggerCallFrame.h:
* dfg/DFGJITCompiler.h:
(JSC::DFG::JITCompiler::jitCode):
* inspector/ScriptCallStackFactory.cpp:
(Inspector::createScriptCallStack):
(Inspector::createScriptCallStackForConsole):
(Inspector::createScriptCallStackFromException):
(Inspector::createScriptArguments):
* inspector/ScriptCallStackFactory.h:
* jit/ExecutableAllocator.cpp:
(JSC::ExecutableAllocator::allocate):
* jit/ExecutableAllocator.h:
* jit/ExecutableAllocatorFixedVMPool.cpp:
(JSC::ExecutableAllocator::allocate):
* profiler/LegacyProfiler.cpp:
(JSC::LegacyProfiler::stopProfiling):
* profiler/LegacyProfiler.h:
* runtime/DateInstanceCache.h:
* runtime/Executable.cpp:
(JSC::ScriptExecutable::newCodeBlockFor):
* runtime/Executable.h:
* runtime/GenericTypedArrayView.h:
* runtime/GenericTypedArrayViewInlines.h:
(JSC::GenericTypedArrayView<Adaptor>::create):
(JSC::GenericTypedArrayView<Adaptor>::createUninitialized):
Source/WebCore:
Fix call sites depends on changing of JSC.
* html/canvas/WebGL2RenderingContext.cpp:
(WebCore::WebGL2RenderingContext::getParameter):
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::getParameter):
* html/canvas/WebGLRenderingContextBase.cpp:
(WebCore::WebGLRenderingContextBase::getUniform):
(WebCore::WebGLRenderingContextBase::getVertexAttrib):
(WebCore::WebGLRenderingContextBase::getWebGLFloatArrayParameter):
(WebCore::WebGLRenderingContextBase::getWebGLIntArrayParameter):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185532
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Sat, 13 Jun 2015 03:25:00 +0000 (03:25 +0000)]
Be more defensive at renderer type checking when initializing flow segments.
https://bugs.webkit.org/show_bug.cgi?id=145942
Reviewed by Simon Fraser.
FlowContents::initializeSegments should ignore unsupported renderers so that when we miss
a simple line layout path invalidation, we don't downcast the unsupported renderer to RenderText.
I have not reproduced this issue (but related to rdar://problem/
21312452)
* rendering/SimpleLineLayoutFlowContents.cpp:
(WebCore::SimpleLineLayout::initializeSegments):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185531
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Sat, 13 Jun 2015 02:27:56 +0000 (02:27 +0000)]
Update springLoadingHighlight type
https://bugs.webkit.org/show_bug.cgi?id=145939
rdar://problem/
20880213
Reviewed by Darin Adler.
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.h:
* DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
* WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.h:
* WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185530
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 13 Jun 2015 01:40:57 +0000 (01:40 +0000)]
Reimplement WKResourceCacheManagerRef on top of WKWebsiteDataStoreRef
https://bugs.webkit.org/show_bug.cgi?id=145951
Reviewed by Darin Adler.
* UIProcess/API/C/WKContext.cpp:
(WKContextGetResourceCacheManager):
* UIProcess/API/C/WKResourceCacheManager.cpp:
(WKResourceCacheManagerGetTypeID):
(toWebsiteDataTypes):
(WKResourceCacheManagerGetCacheOrigins):
(WKResourceCacheManagerClearCacheForOrigin):
(WKResourceCacheManagerClearCacheForAllOrigins):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185529
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin@apple.com [Sat, 13 Jun 2015 01:35:08 +0000 (01:35 +0000)]
Fix minor ES6 compliance issue in RegExp.prototype.toString and optimize performance a little
https://bugs.webkit.org/show_bug.cgi?id=145935
Reviewed by Anders Carlsson.
Source/JavaScriptCore:
Test: js/regexp-toString.html
* runtime/RegExpPrototype.cpp:
(JSC::getFlags): Avoid memory allocation for the flags string by returning it in a character
buffer instead of constructing a WTF::String for it.
(JSC::regExpProtoFuncToString): Require only that the this value be an object; don't require
that it is actually a regular expression object. This is covered in the ES6 specification.
Also removed comment about the "/(?:)/" trick since that is now the repsonsibility of the
getter for the "source" property. Updated to use getFlags so we do one less memory allocation.
(JSC::regExpProtoGetterFlags): Chagned to use getFlags instead of the old flagsString.
LayoutTests:
* js/regexp-toString-expected.txt: Added.
* js/regexp-toString.html: Added.
* js/script-tests/regexp-toString.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185528
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 13 Jun 2015 00:30:30 +0000 (00:30 +0000)]
Reimplement WKApplicationCacheManagerRef as WKWebsiteDataStoreRef
https://bugs.webkit.org/show_bug.cgi?id=145950
Reviewed by Dan Bernstein.
* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/WKApplicationCacheManager.cpp:
(WKApplicationCacheManagerGetTypeID):
(WKApplicationCacheManagerGetApplicationCacheOrigins):
(WKApplicationCacheManagerDeleteEntriesForOrigin):
(WKApplicationCacheManagerDeleteAllEntries):
* UIProcess/API/C/WKContext.cpp:
(WKContextGetApplicationCacheManager):
(WKContextGetPluginSiteDataManager):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185527
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Sat, 13 Jun 2015 00:18:29 +0000 (00:18 +0000)]
deleteEmptyDirectory should delete .DS_Store files on OS X
https://bugs.webkit.org/show_bug.cgi?id=145944
Reviewed by Dan Bernstein.
deleteEmptyDirectory is often used when clearing website data, so we should
take extra care to delete empty directories so the user won't think that clearing
website data didn't do anything because it would leave directories with .DS_Store
files behind.
* platform/mac/FileSystemMac.mm:
(WebCore::deleteEmptyDirectory):
* platform/posix/FileSystemPOSIX.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185525
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 23:40:08 +0000 (23:40 +0000)]
Move cursor to (10, 0) instead of (0, 0) and polish the mouse move code
https://bugs.webkit.org/show_bug.cgi?id=145945
Patch by Dewei Zhu <dewei_zhu@apple.com> on 2015-06-12
Reviewed by Stephanie Lewis.
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
(OSXBrowserDriver.prepareEnv):
(OSXBrowserDriver.moveCursor): Deleted.
(OSXBrowserDriver): Deleted.
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.prepareEnv):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185524
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rniwa@webkit.org [Fri, 12 Jun 2015 22:49:21 +0000 (22:49 +0000)]
Unreviewed build fix for merging platforms.
* public/admin/platforms.php:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185523
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Fri, 12 Jun 2015 22:08:46 +0000 (22:08 +0000)]
Revise update-webkit-dependency to use LWP::UserAgent instead of LWP::Simple for better handling of https
https://bugs.webkit.org/show_bug.cgi?id=145938
Reviewed by Alexey Proskuryakov.
* Scripts/update-webkit-dependency: Switch from LWP::Simple to
LWP::UserAgent to get access to more robust HTTPS support.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185522
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 12 Jun 2015 22:04:27 +0000 (22:04 +0000)]
Clean up IndexedDB website data retrieval and removal
https://bugs.webkit.org/show_bug.cgi?id=145941
Reviewed by Andreas Kling.
- Use SecurityOrigin instead of SecurityOriginData; It's not possible to pass SecurityOriginData
safely between threads.
- Use std::chrono instead of double for modification times.
- Get rid of endTime since it's not used.
- Change deleteIndexedDatabaseEntriesForOrigin to deleteIndexedDatabaseEntriesForOrigins and make it take
a vector of origins instead of a single one.
- Get rid of deleteAllIndexedDatabaseEntries.
- Change SecurityOriginData::securityOrigin to call isolatedCopy on the origin components, since it's common
to pass origins to other threads and we want that to be safe.
* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::fetchWebsiteData):
(WebKit::DatabaseProcess::deleteWebsiteData):
(WebKit::DatabaseProcess::deleteWebsiteDataForOrigins):
(WebKit::DatabaseProcess::indexedDatabaseOrigins):
(WebKit::removeAllDatabasesForOriginPath):
(WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesForOrigins):
(WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesModifiedSince):
(WebKit::DatabaseProcess::getIndexedDatabaseOrigins): Deleted.
(WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesForOrigin): Deleted.
(WebKit::DatabaseProcess::deleteIndexedDatabaseEntriesModifiedBetweenDates): Deleted.
(WebKit::DatabaseProcess::deleteAllIndexedDatabaseEntries): Deleted.
* DatabaseProcess/DatabaseProcess.h:
* Shared/SecurityOriginData.cpp:
(WebKit::SecurityOriginData::securityOrigin):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185521
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Fri, 12 Jun 2015 21:01:17 +0000 (21:01 +0000)]
[CSS Grid Layout] Fix grid-template-areas parsing to avoid spaces
https://bugs.webkit.org/show_bug.cgi?id=145860
Reviewed by Sergio Villar Senin.
Source/WebCore:
The spec doesn't require to have spaces between unnamed and named areas
in grid-template-areas syntax. But spaces are currently required in our
code.
This was confirmed in the CSS WG mailing list:
https://lists.w3.org/Archives/Public/www-style/2015May/0239.html
This patch updates grid-template-areas parsing to allow the possibility
of removing spaces between unnamed and named areas.
Added new cases to fast/css-grid-layout/grid-template-areas-get-set.html.
* css/CSSParser.cpp:
(WebCore::parseGridTemplateAreasColumnNames): New helper method to
determine the column names split by white spaces or dots.
(WebCore::CSSParser::parseGridTemplateAreasRow): Use the new helper
method to get the column names.
(WebCore::containsOnlyDots): Deleted. Not needed anymore as
parseGridTemplateAreasColumnNames() is using a single dot for unnamed
grid areas (despite of being defined with 1 or more dots).
LayoutTests:
* fast/css-grid-layout/grid-template-areas-get-set-expected.txt:
* fast/css-grid-layout/grid-template-areas-get-set.html: Add new test
cases.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185520
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eric.carlson@apple.com [Fri, 12 Jun 2015 20:41:36 +0000 (20:41 +0000)]
[Mac] AirPlay menu button doesn't always show on page load
https://bugs.webkit.org/show_bug.cgi?id=145936
Reviewed by Brent Fulgham.
* Modules/mediasession/WebMediaSessionManager.cpp:
(WebCore::mediaProducerStateString): New, return a string representing MediaStateFlags.
(WebCore::WebMediaSessionManager::clientStateDidChange): Log the states as strings.
(WebCore::WebMediaSessionManager::toString): New, return a string representing ConfigurationTasks.
(WebCore::WebMediaSessionManager::scheduleDelayedTask): Add logging.
(WebCore::WebMediaSessionManager::taskTimerFired): Add logging.
* Modules/mediasession/WebMediaSessionManager.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h: Override wirelessVideoPlaybackDisabled
so it is possible to activate route monitoring for a movie loaded with this engine.
* platform/graphics/mac/MediaPlayerPrivateQTKit.h: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185519
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Fri, 12 Jun 2015 18:48:53 +0000 (18:48 +0000)]
Add the remaining missing override specifiers under Source/WebCore/
https://bugs.webkit.org/show_bug.cgi?id=145907
Reviewed by Darin Adler.
Fix the remaining compiler warnings about missing override specifiers
for overriding method declarations in classes under Source/WebCore/.
Where the addition had to be performed on all virtual methods of the
class, the virtual specifier was removed so now only the override
specifier is in use.
* Modules/indexeddb/IDBOpenDBRequest.h:
* Modules/indexeddb/IDBRequest.h:
* Modules/webdatabase/DatabaseServer.h:
* bindings/js/ReadableJSStream.h:
* editing/InsertTextCommand.h:
* mathml/MathMLInlineContainerElement.h:
* platform/audio/EqualPowerPanner.h:
(WebCore::EqualPowerPanner::reset):
* platform/graphics/MediaPlayer.cpp:
(WebCore::NullMediaPlayerPrivate::load):
(WebCore::NullMediaPlayerPrivate::cancelLoad):
(WebCore::NullMediaPlayerPrivate::prepareToPlay):
(WebCore::NullMediaPlayerPrivate::play):
(WebCore::NullMediaPlayerPrivate::pause):
(WebCore::NullMediaPlayerPrivate::platformMedia):
(WebCore::NullMediaPlayerPrivate::platformLayer):
(WebCore::NullMediaPlayerPrivate::naturalSize):
(WebCore::NullMediaPlayerPrivate::hasVideo):
(WebCore::NullMediaPlayerPrivate::hasAudio):
(WebCore::NullMediaPlayerPrivate::setVisible):
(WebCore::NullMediaPlayerPrivate::durationDouble):
(WebCore::NullMediaPlayerPrivate::currentTimeDouble):
(WebCore::NullMediaPlayerPrivate::seekDouble):
(WebCore::NullMediaPlayerPrivate::seeking):
(WebCore::NullMediaPlayerPrivate::setRateDouble):
(WebCore::NullMediaPlayerPrivate::setPreservesPitch):
(WebCore::NullMediaPlayerPrivate::paused):
(WebCore::NullMediaPlayerPrivate::setVolumeDouble):
(WebCore::NullMediaPlayerPrivate::supportsMuting):
(WebCore::NullMediaPlayerPrivate::setMuted):
(WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
(WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
(WebCore::NullMediaPlayerPrivate::networkState):
(WebCore::NullMediaPlayerPrivate::readyState):
(WebCore::NullMediaPlayerPrivate::maxTimeSeekableDouble):
(WebCore::NullMediaPlayerPrivate::minTimeSeekable):
(WebCore::NullMediaPlayerPrivate::buffered):
(WebCore::NullMediaPlayerPrivate::totalBytes):
(WebCore::NullMediaPlayerPrivate::didLoadingProgress):
(WebCore::NullMediaPlayerPrivate::setSize):
(WebCore::NullMediaPlayerPrivate::canLoadPoster):
(WebCore::NullMediaPlayerPrivate::setPoster):
(WebCore::NullMediaPlayerPrivate::hasSingleSecurityOrigin):
* platform/graphics/filters/DistantLightSource.h:
* platform/graphics/filters/FEComposite.h:
* platform/graphics/filters/FEDisplacementMap.h:
(WebCore::FEDisplacementMap::determineAbsolutePaintRect):
* platform/graphics/filters/FEFlood.h:
(WebCore::FEFlood::determineAbsolutePaintRect):
* platform/graphics/filters/PointLightSource.h:
* platform/graphics/filters/SpotLightSource.h:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
(WebCore::MediaPlayerPrivateGStreamer::hasVideo):
(WebCore::MediaPlayerPrivateGStreamer::hasAudio):
(WebCore::MediaPlayerPrivateGStreamer::audioSourceProvider):
(WebCore::MediaPlayerPrivateGStreamer::engineDescription):
(WebCore::MediaPlayerPrivateGStreamer::isLiveStream):
(WebCore::MediaPlayerPrivateGStreamer::totalVideoFrames):
(WebCore::MediaPlayerPrivateGStreamer::droppedVideoFrames):
(WebCore::MediaPlayerPrivateGStreamer::corruptedVideoFrames):
(WebCore::MediaPlayerPrivateGStreamer::totalFrameDelay):
* platform/graphics/texmap/BitmapTextureGL.h:
(WebCore::BitmapTextureGL::isBackedByOpenGL):
* platform/graphics/transforms/Matrix3DTransformOperation.h:
* platform/graphics/transforms/MatrixTransformOperation.h:
* platform/graphics/transforms/PerspectiveTransformOperation.h:
* platform/graphics/transforms/RotateTransformOperation.h:
* platform/graphics/transforms/ScaleTransformOperation.h:
* platform/graphics/transforms/SkewTransformOperation.h:
* platform/image-decoders/png/PNGImageDecoder.h:
(WebCore::PNGImageDecoder::filenameExtension):
* platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.h:
* platform/mock/MockRealtimeMediaSourceCenter.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185518
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 18:43:01 +0000 (18:43 +0000)]
Unreviewed, rolling out r185512.
https://bugs.webkit.org/show_bug.cgi?id=145932
Many asserts on layout tests and on API tests (Requested by
ap_ on #webkit).
Reverted changeset:
"Use modern for-loops in WebCore/rendering - 1"
https://bugs.webkit.org/show_bug.cgi?id=145831
http://trac.webkit.org/changeset/185512
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185517
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Fri, 12 Jun 2015 18:22:32 +0000 (18:22 +0000)]
OpenGLESSPI.h doesn't need to include UIKit.h
https://bugs.webkit.org/show_bug.cgi?id=145931
Reviewed by Darin Adler.
No need to suck in all of UIKit from OpenGLESSPI.h.
* platform/spi/ios/OpenGLESSPI.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185516
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 17:53:35 +0000 (17:53 +0000)]
Add barebones implementation of media session invocation algorithm.
https://bugs.webkit.org/show_bug.cgi?id=145847
Patch by Matt Rajca <mrajca@apple.com> on 2015-06-12
Reviewed by Darin Adler.
* Modules/mediasession/MediaSession.cpp:
(WebCore::MediaSession::invoke): Move the media session to an active state.
* Modules/mediasession/MediaSession.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::playInternal): Call the media session invocation algorithm as described in the
Media Session spec.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185514
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Fri, 12 Jun 2015 17:43:31 +0000 (17:43 +0000)]
Network Cache: Use SHA1 for header checksum
https://bugs.webkit.org/show_bug.cgi?id=145928
Reviewed by Chris Dumez.
Use SHA1 everywhere for consistency and robustness.
* NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::bodyPathForKey):
(WebKit::NetworkCache::RecordMetaData::RecordMetaData):
(WebKit::NetworkCache::decodeRecordMetaData):
(WebKit::NetworkCache::decodeRecordHeader):
(WebKit::NetworkCache::encodeRecordMetaData):
(WebKit::NetworkCache::Storage::encodeRecord):
(WebKit::NetworkCache::hashData): Deleted.
This was the last user of 32 bit hashes in cache code.
* NetworkProcess/cache/NetworkCacheStorage.h:
Also bump the cache version number as recent changes have changed the format.
Old caches would transition fine but this makes it easier to identify which version user has.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185513
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 17:10:07 +0000 (17:10 +0000)]
Use modern for-loops in WebCore/rendering - 1
https://bugs.webkit.org/show_bug.cgi?id=145831
Patch by Hunseop Jeong <hs85.jeong@samsung.com> on 2015-06-12
Reviewed by Darin Adler.
No new tests because there is no behavior change.
* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):
(WebCore::FilterEffectRenderer::clearIntermediateResults):
* rendering/FilterEffectRenderer.h:
* rendering/FloatingObjects.cpp:
(WebCore::FloatingObjects::clearLineBoxTreePointers):
(WebCore::FloatingObjects::moveAllToFloatInfoMap):
(WebCore::FloatingObjects::computePlacedFloatsTree):
* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::collectFixedPositionedLayers):
* rendering/HitTestResult.cpp:
(WebCore::HitTestResult::append):
* rendering/ImageQualityController.cpp:
(WebCore::ImageQualityController::highQualityRepaintTimerFired):
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
* rendering/RenderBlock.cpp:
(WebCore::removeBlockFromDescendantAndContainerMaps):
(WebCore::RenderBlock::addOverflowFromPositionedObjects):
(WebCore::RenderBlock::dirtyForLayoutFromPercentageHeightDescendants):
(WebCore::RenderBlock::simplifiedNormalFlowLayout):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::markPositionedObjectsForLayout):
(WebCore::RenderBlock::paintContinuationOutlines):
(WebCore::clipOutPositionedObjects):
(WebCore::RenderBlock::removeFromTrackedRendererMaps):
(WebCore::RenderBlock::removePositionedObjects):
(WebCore::RenderBlock::checkPositionedObjectsNeedLayout):
* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats):
(WebCore::RenderBlockFlow::styleDidChange):
(WebCore::RenderBlockFlow::moveFloatsTo):
(WebCore::RenderBlockFlow::addOverflowFromFloats):
(WebCore::RenderBlockFlow::repaintOverhangingFloats):
(WebCore::RenderBlockFlow::paintFloats):
(WebCore::RenderBlockFlow::clipOutFloatingObjects):
(WebCore::RenderBlockFlow::lowestFloatLogicalBottom):
(WebCore::RenderBlockFlow::lowestInitialLetterLogicalBottom):
(WebCore::RenderBlockFlow::addOverhangingFloats):
(WebCore::RenderBlockFlow::addIntrudingFloats):
(WebCore::RenderBlockFlow::markSiblingsWithFloatsForLayout):
(WebCore::RenderBlockFlow::adjustForBorderFit):
* rendering/RenderBlockLineLayout.cpp:
(WebCore::setLogicalWidthForTextRun):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::RenderBlockFlow::linkToEndLineIfNeeded):
(WebCore::RenderBlockFlow::repaintDirtyFloats):
(WebCore::RenderBlockFlow::layoutLineBoxes):
(WebCore::RenderBlockFlow::checkFloatsInCleanLine):
(WebCore::RenderBlockFlow::determineStartPosition):
(WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine):
* rendering/RenderCounter.cpp:
(WebCore::RenderCounter::destroyCounterNodes):
(WebCore::updateCounters):
(WebCore::RenderCounter::rendererStyleChanged):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::autoMarginOffsetInMainAxis):
(WebCore::RenderFlexibleBox::freezeViolations):
(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
(WebCore::RenderFlexibleBox::numberOfInFlowPositionedChildren):
(WebCore::RenderFlexibleBox::layoutColumnReverse):
(WebCore::RenderFlexibleBox::alignFlexLines):
(WebCore::RenderFlexibleBox::alignChildren):
(WebCore::RenderFlexibleBox::flipForWrapReverse):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::updateAllLayerToRegionMappings):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::addAnnotatedRegions):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
(WebCore::RenderLayer::updateDescendantDependentFlags):
* rendering/RenderLayerBacking.cpp:
(WebCore::descendantLayerPaintsIntoAncestor):
(WebCore::RenderLayerBacking::startAnimation):
* rendering/RenderLineBoxList.cpp:
(WebCore::RenderLineBoxList::paint):
* rendering/RenderListBox.cpp:
(WebCore::RenderListBox::updateFromElement):
* rendering/RenderMenuList.cpp:
(WebCore::selectedOptionCount):
(RenderMenuList::updateOptionsWidth):
* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::distributeImplicitBreaks):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Fri, 12 Jun 2015 17:04:48 +0000 (17:04 +0000)]
[iOS WK2] Video with reflection crashes WebKit and Safari
https://bugs.webkit.org/show_bug.cgi?id=145905
rdar://problem/
18364939
Reviewed by Anders Carlsson.
On iOS, AVPlayerLayers are contained inside a WebVideoContainerLayer, but
the layer type is still LayerTypeAVPlayerLayer.
Avoid throwing exceptions when cloning such layers by checking the layer class.
* WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
(WebKit::PlatformCALayerRemoteCustom::clone):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 12 Jun 2015 16:59:26 +0000 (16:59 +0000)]
Fix unused private field warning in ResourceHandleSoup.cpp
https://bugs.webkit.org/show_bug.cgi?id=145910
Reviewed by Darin Adler.
* platform/network/soup/ResourceHandleSoup.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185510
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 12 Jun 2015 16:56:02 +0000 (16:56 +0000)]
[EFL] Fix unused private field warning in WebContextMenuProxyEfl.cpp
https://bugs.webkit.org/show_bug.cgi?id=145911
Reviewed by Darin Adler.
* UIProcess/efl/WebContextMenuProxyEfl.cpp:
(WebKit::WebContextMenuProxyEfl::WebContextMenuProxyEfl): Deleted.
* UIProcess/efl/WebContextMenuProxyEfl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185509
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 12 Jun 2015 16:52:38 +0000 (16:52 +0000)]
[GTK] Fix return type warning in WebViewTest.cpp
https://bugs.webkit.org/show_bug.cgi?id=145914
Reviewed by Darin Adler.
* TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
(WebViewTest::isEditable):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 16:48:58 +0000 (16:48 +0000)]
Web Inspector: CRASH trying to inspect text that was removed/replaced
https://bugs.webkit.org/show_bug.cgi?id=145898
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-12
Reviewed by Darin Adler.
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::inspect):
(WebCore::InspectorDOMAgent::focusNode):
Ensure we only cause focusNode with a node to focus. If the original
node that was provided is no longer in the document, then we won't
actually find a node to inspect.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyuki.kim@samsung.com [Fri, 12 Jun 2015 16:45:15 +0000 (16:45 +0000)]
[EFL] canvas/philip/tests/toDataURL.jpeg.foo tests have been failed since r185417.
https://bugs.webkit.org/show_bug.cgi?id=145878
Reviewed by Gyuyoung Kim.
Fix input buffer alignment issue.
No new tests, canvas/philip/tests/toDataURL.jpeg.foo can be used.
* platform/graphics/efl/ImageBufferEfl.cpp:
(WebCore::encodeImagePNG):
(WebCore::encodeImageJPEG):
(WebCore::ImageBuffer::toDataURL):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
basile_clement@apple.com [Fri, 12 Jun 2015 16:33:37 +0000 (16:33 +0000)]
DFG Object Allocation Sinking should not consider GetClosureVar as escapes
https://bugs.webkit.org/show_bug.cgi?id=145904
Reviewed by Filip Pizlo.
The object allocation sinking phase is currently able to sink
CreateActivation nodes, but will consider any GetClosureVar node as
escaping.
This is not problematic in general as most of the GetClosureVar nodes
we would have been able to sink over will have been eliminated by CSE
anyway. Still, this is an oversight that we should fix since the
machinery is already in place.
* dfg/DFGObjectAllocationSinkingPhase.cpp:
(JSC::DFG::ObjectAllocationSinkingPhase::handleNode):
* dfg/DFGPromoteHeapAccess.h:
(JSC::DFG::promoteHeapAccess):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Fri, 12 Jun 2015 14:46:15 +0000 (14:46 +0000)]
Unreviewed build fix after r185502.
* NetworkProcess/cache/NetworkCacheFileSystem.cpp:
GRefPtr.h header has been moved to a different place.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Fri, 12 Jun 2015 13:44:43 +0000 (13:44 +0000)]
Add missing override specifiers under Source/WebCore/svg/
https://bugs.webkit.org/show_bug.cgi?id=145841
Reviewed by Darin Adler.
Add missing override specifiers to virtual method overrides for classes
under Source/WebCore/svg/, suppressing a bunch of warnings when compiling
with Clang 3.6.
Add the BEGIN_DECLARE_ANIMATED_PROPERTIES_BASE() macro that doesn't
override the localAttributeToPropertyMap() method declaration, and
have the BEGIN_DECLARE_ANIMATED_PROPERTIES() macro add the override
specifier. The new macro is used in SVGElement.
Change the DECLARE_ANIMATED_PROPERTY() to accept the optional override
specifier as the fifth parameter. Current DECLARE_ANIMATED_*() macros
are modified to just pass an empty argument, not adding any specifier.
DECLARE_ANIMATED_BOOLEAN_OVERRIDE() and DECLARE_ANIMATED_STRING_OVERRIDE()
macros are added to override the methods for the externalResourcesRequired
and href animated properties, where required.
* svg/SVGAElement.h:
* svg/SVGAltGlyphElement.h:
* svg/SVGAnimatedAngle.h:
* svg/SVGAnimatedBoolean.h:
* svg/SVGAnimatedEnumeration.h:
* svg/SVGAnimatedInteger.h:
* svg/SVGAnimatedLength.h:
* svg/SVGAnimatedNumber.h:
* svg/SVGAnimatedPreserveAspectRatio.h:
* svg/SVGAnimatedRect.h:
* svg/SVGAnimatedString.h:
* svg/SVGAnimationElement.h:
* svg/SVGCircleElement.h:
* svg/SVGClipPathElement.h:
* svg/SVGCursorElement.h:
* svg/SVGDefsElement.h:
* svg/SVGElement.h:
* svg/SVGEllipseElement.h:
* svg/SVGFEImageElement.h:
* svg/SVGFilterElement.h:
* svg/SVGFontElement.h:
* svg/SVGForeignObjectElement.h:
* svg/SVGGElement.h:
* svg/SVGGlyphRefElement.h:
* svg/SVGGradientElement.h:
* svg/SVGImageElement.h:
* svg/SVGLineElement.h:
* svg/SVGMPathElement.h:
* svg/SVGMarkerElement.h:
* svg/SVGMaskElement.h:
* svg/SVGPathElement.h:
* svg/SVGPatternElement.h:
* svg/SVGPolyElement.h:
* svg/SVGRectElement.h:
* svg/SVGSVGElement.h:
* svg/SVGScriptElement.h:
* svg/SVGSwitchElement.h:
* svg/SVGSymbolElement.h:
* svg/SVGTRefElement.h:
* svg/SVGTextContentElement.h:
* svg/SVGTextPathElement.h:
* svg/SVGURIReference.h: Add the hrefBaseValue() pure virtual method
so it can be overridden by any class that also overrides the
corresponding setHrefBaseValue() method.
* svg/SVGUseElement.h:
* svg/SVGViewElement.h:
* svg/properties/SVGAnimatedPropertyMacros.h:
* svg/properties/SVGMatrixTearOff.h:
(WebCore::SVGMatrixTearOff::commitChange):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zandobersek@gmail.com [Fri, 12 Jun 2015 13:32:03 +0000 (13:32 +0000)]
[GLib] Move files under Source/WTF/wtf/gobject to Source/WTF/wtf/glib
https://bugs.webkit.org/show_bug.cgi?id=145799
Reviewed by Carlos Garcia Campos.
Source/WebCore:
Update header inclusions for headers that have been moved
to Source/WTF/wtf/glib/.
* accessibility/atk/AXObjectCacheAtk.cpp:
* accessibility/atk/WebKitAccessibleInterfaceText.cpp:
* bindings/gobject/DOMObjectCache.cpp:
* bindings/gobject/GObjectEventListener.h:
* bindings/gobject/GObjectNodeFilterCondition.h:
* bindings/gobject/GObjectXPathNSResolver.h:
* bindings/gobject/WebKitDOMEventTarget.cpp:
* platform/Pasteboard.h:
* platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
* platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
* platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp:
* platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
* platform/audio/gtk/AudioBusGtk.cpp:
* platform/geoclue/GeolocationProviderGeoclue.h:
* platform/geoclue/GeolocationProviderGeoclue2.cpp:
* platform/glib/BatteryProviderUPower.cpp:
* platform/glib/BatteryProviderUPower.h:
* platform/graphics/gstreamer/GRefPtrGStreamer.h:
* platform/graphics/gstreamer/GStreamerUtilities.cpp:
* platform/graphics/gstreamer/GUniquePtrGStreamer.h:
* platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
* platform/graphics/gstreamer/MediaSourceGStreamer.cpp:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:
* platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h:
* platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
* platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
* platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
* platform/graphics/gtk/ImageBufferGtk.cpp:
* platform/graphics/gtk/ImageGtk.cpp:
* platform/gtk/ContextMenuGtk.cpp:
* platform/gtk/ContextMenuItemGtk.cpp:
* platform/gtk/DataObjectGtk.cpp:
* platform/gtk/DataObjectGtk.h:
* platform/gtk/FileSystemGtk.cpp:
* platform/gtk/GRefPtrGtk.h:
* platform/gtk/GUniquePtrGtk.h:
* platform/gtk/GamepadsGtk.cpp:
* platform/gtk/GtkUtilities.cpp:
* platform/gtk/LanguageGtk.cpp:
* platform/gtk/LocalizedStringsGtk.cpp:
* platform/gtk/PasteboardHelper.cpp:
* platform/gtk/ScrollbarThemeGtk.cpp:
* platform/gtk/SharedBufferGtk.cpp:
* platform/gtk/SharedTimerGtk.cpp:
* platform/mediastream/openwebrtc/RealtimeMediaSourceCenterOwr.cpp:
* platform/network/ResourceHandleInternal.h:
* platform/network/gtk/CredentialBackingStore.cpp:
* platform/network/soup/CertificateInfo.h:
* platform/network/soup/CookieJarSoup.cpp:
* platform/network/soup/DNSSoup.cpp:
* platform/network/soup/GRefPtrSoup.h:
* platform/network/soup/GUniquePtrSoup.h:
* platform/network/soup/ResourceError.h:
* platform/network/soup/ResourceErrorSoup.cpp:
* platform/network/soup/ResourceHandleSoup.cpp:
* platform/network/soup/ResourceResponse.h:
* platform/network/soup/SocketStreamHandle.h:
* platform/network/soup/SocketStreamHandleSoup.cpp:
* platform/network/soup/SoupNetworkSession.h:
* platform/text/gtk/HyphenationLibHyphen.cpp:
* rendering/RenderThemeGtk.cpp:
Source/WebKit2:
Update header inclusions for headers that have been moved
to Source/WTF/wtf/glib/.
* NetworkProcess/cache/NetworkCacheFileSystemPosix.h:
* NetworkProcess/cache/NetworkCacheIOChannel.h:
* NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
* NetworkProcess/soup/NetworkProcessSoup.cpp:
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* Shared/Downloads/soup/DownloadSoup.cpp:
* Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h:
* Shared/PrintInfo.h:
* Shared/gtk/ArgumentCodersGtk.cpp:
* Shared/gtk/ArgumentCodersGtk.h:
* Shared/gtk/KeyedDecoder.h:
* Shared/gtk/KeyedEncoder.h:
* Shared/gtk/ProcessExecutablePathGtk.cpp:
* UIProcess/API/gtk/WebKitBackForwardList.cpp:
* UIProcess/API/gtk/WebKitBackForwardListItem.cpp:
* UIProcess/API/gtk/WebKitColorChooser.h:
* UIProcess/API/gtk/WebKitContextMenu.cpp:
* UIProcess/API/gtk/WebKitContextMenuItem.cpp:
* UIProcess/API/gtk/WebKitCookieManager.cpp:
* UIProcess/API/gtk/WebKitDownload.cpp:
* UIProcess/API/gtk/WebKitDownloadClient.cpp:
* UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
* UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
* UIProcess/API/gtk/WebKitFindController.cpp:
* UIProcess/API/gtk/WebKitFormClient.cpp:
* UIProcess/API/gtk/WebKitFormSubmissionRequest.cpp:
* UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
* UIProcess/API/gtk/WebKitJavascriptResult.cpp:
* UIProcess/API/gtk/WebKitLoaderClient.cpp:
* UIProcess/API/gtk/WebKitMimeInfo.cpp:
* UIProcess/API/gtk/WebKitNavigationAction.cpp:
* UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp:
* UIProcess/API/gtk/WebKitPolicyClient.cpp:
* UIProcess/API/gtk/WebKitPrintOperation.cpp:
* UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
* UIProcess/API/gtk/WebKitUIClient.cpp:
* UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
* UIProcess/API/gtk/WebKitUserContentManager.cpp:
* UIProcess/API/gtk/WebKitWebContext.cpp:
* UIProcess/API/gtk/WebKitWebInspector.cpp:
* UIProcess/API/gtk/WebKitWebResource.cpp:
* UIProcess/API/gtk/WebKitWebView.cpp:
* UIProcess/API/gtk/WebKitWebViewBase.cpp:
* UIProcess/InspectorServer/WebSocketServer.h:
* UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
* UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
* UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
* UIProcess/Plugins/gtk/PluginInfoCache.h:
* UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
* UIProcess/gtk/DragAndDropHandler.cpp:
* UIProcess/gtk/GestureController.h:
* UIProcess/gtk/InputMethodFilter.cpp:
* UIProcess/gtk/InputMethodFilter.h:
* UIProcess/gtk/WebInspectorProxyGtk.cpp:
* UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
* UIProcess/gtk/WebPopupMenuProxyGtk.h:
* UIProcess/gtk/WebProcessPoolGtk.cpp:
* WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitWebExtension.cpp:
* WebProcess/InjectedBundle/API/gtk/WebKitWebHitTestResult.cpp:
* WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
* WebProcess/WebPage/gtk/PrinterListGtk.h:
* WebProcess/WebPage/gtk/WebPageGtk.cpp:
* WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
* WebProcess/WebPage/gtk/WebPrintOperationGtk.h:
* WebProcess/gtk/WebGtkExtensionManager.h:
* WebProcess/soup/WebKitSoupRequestInputStream.cpp:
* WebProcess/soup/WebProcessSoup.cpp:
* WebProcess/soup/WebSoupRequestManager.h:
Source/WTF:
Move the GLib-specific files to the Source/WTF/wtf/glib/ directory.
'gobject' wasn't the most appropriate name for the directory since
GObject is a submodule of GLib, but a lot of the code there didn't
have much to do with GObject specifically.
Build rules for the moved files are also updated.
* WTF.vcxproj/WTF.vcxproj:
* WTF.vcxproj/WTF.vcxproj.filters:
* wtf/Platform.h:
* wtf/PlatformEfl.cmake:
* wtf/PlatformGTK.cmake:
* wtf/RunLoop.h:
* wtf/WorkQueue.h:
* wtf/glib/GLibUtilities.cpp: Renamed from Source/WTF/wtf/gobject/GlibUtilities.cpp.
(getCurrentExecutablePath):
* wtf/glib/GLibUtilities.h: Renamed from Source/WTF/wtf/gobject/GlibUtilities.h.
* wtf/glib/GMainLoopSource.cpp: Renamed from Source/WTF/wtf/gobject/GMainLoopSource.cpp.
(WTF::GMainLoopSource::create):
(WTF::GMainLoopSource::GMainLoopSource):
(WTF::GMainLoopSource::~GMainLoopSource):
(WTF::GMainLoopSource::isScheduled):
(WTF::GMainLoopSource::isActive):
(WTF::GMainLoopSource::cancel):
(WTF::GMainLoopSource::scheduleIdleSource):
(WTF::GMainLoopSource::schedule):
(WTF::GMainLoopSource::scheduleTimeoutSource):
(WTF::GMainLoopSource::scheduleAfterDelay):
(WTF::createMicrosecondsTimeoutSource):
(WTF::GMainLoopSource::scheduleAndDeleteOnDestroy):
(WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy):
(WTF::GMainLoopSource::prepareVoidCallback):
(WTF::GMainLoopSource::finishVoidCallback):
(WTF::GMainLoopSource::voidCallback):
(WTF::GMainLoopSource::prepareBoolCallback):
(WTF::GMainLoopSource::finishBoolCallback):
(WTF::GMainLoopSource::boolCallback):
(WTF::GMainLoopSource::socketCallback):
(WTF::GMainLoopSource::voidSourceCallback):
(WTF::GMainLoopSource::boolSourceCallback):
(WTF::GMainLoopSource::socketSourceCallback):
(WTF::GMainLoopSource::Context::destroySource):
* wtf/glib/GMainLoopSource.h: Renamed from Source/WTF/wtf/gobject/GMainLoopSource.h.
(WTF::GMainLoopSource::Context::operator=):
* wtf/glib/GMutexLocker.h: Renamed from Source/WTF/wtf/gobject/GMutexLocker.h.
(WTF::MutexWrapper<GMutex>::lock):
(WTF::MutexWrapper<GMutex>::unlock):
(WTF::MutexWrapper<GRecMutex>::lock):
(WTF::MutexWrapper<GRecMutex>::unlock):
(WTF::GMutexLocker::GMutexLocker):
(WTF::GMutexLocker::~GMutexLocker):
(WTF::GMutexLocker::lock):
(WTF::GMutexLocker::unlock):
* wtf/glib/GRefPtr.cpp: Renamed from Source/WTF/wtf/gobject/GRefPtr.cpp.
(WTF::refGPtr):
(WTF::derefGPtr):
* wtf/glib/GRefPtr.h: Renamed from Source/WTF/wtf/gobject/GRefPtr.h.
(WTF::GRefPtr::GRefPtr):
(WTF::GRefPtr::~GRefPtr):
(WTF::GRefPtr::clear):
(WTF::GRefPtr::outPtr):
(WTF::GRefPtr::isHashTableDeletedValue):
(WTF::GRefPtr::get):
(WTF::GRefPtr::operator*):
(WTF::GRefPtr::operator->):
(WTF::GRefPtr::operator!):
(WTF::GRefPtr::operator UnspecifiedBoolType):
(WTF::GRefPtr::hashTableDeletedValue):
(WTF::=):
(WTF::GRefPtr<T>::swap):
(WTF::swap):
(WTF::operator==):
(WTF::operator!=):
(WTF::static_pointer_cast):
(WTF::const_pointer_cast):
(WTF::adoptGRef):
(WTF::refGPtr):
(WTF::derefGPtr):
* wtf/glib/GThreadSafeMainLoopSource.cpp: Renamed from Source/WTF/wtf/gobject/GThreadSafeMainLoopSource.cpp.
(WTF::GThreadSafeMainLoopSource::GThreadSafeMainLoopSource):
(WTF::GThreadSafeMainLoopSource::~GThreadSafeMainLoopSource):
(WTF::GThreadSafeMainLoopSource::cancel):
(WTF::GThreadSafeMainLoopSource::schedule):
(WTF::GThreadSafeMainLoopSource::scheduleAfterDelay):
(WTF::GThreadSafeMainLoopSource::prepareVoidCallback):
(WTF::GThreadSafeMainLoopSource::finishVoidCallback):
(WTF::GThreadSafeMainLoopSource::voidCallback):
(WTF::GThreadSafeMainLoopSource::prepareBoolCallback):
(WTF::GThreadSafeMainLoopSource::finishBoolCallback):
(WTF::GThreadSafeMainLoopSource::boolCallback):
* wtf/glib/GThreadSafeMainLoopSource.h: Renamed from Source/WTF/wtf/gobject/GThreadSafeMainLoopSource.h.
* wtf/glib/GTypedefs.h: Renamed from Source/WTF/wtf/gobject/GTypedefs.h.
* wtf/glib/GUniquePtr.h: Renamed from Source/WTF/wtf/gobject/GUniquePtr.h.
(WTF::GPtrDeleter::operator()):
(WTF::GUniqueOutPtr::GUniqueOutPtr):
(WTF::GUniqueOutPtr::~GUniqueOutPtr):
(WTF::GUniqueOutPtr::outPtr):
(WTF::GUniqueOutPtr::release):
(WTF::GUniqueOutPtr::operator*):
(WTF::GUniqueOutPtr::operator->):
(WTF::GUniqueOutPtr::get):
(WTF::GUniqueOutPtr::operator!):
(WTF::GUniqueOutPtr::operator UnspecifiedBoolType):
(WTF::GUniqueOutPtr::reset):
* wtf/glib/MainThreadGLib.cpp:
* wtf/gobject/GMainLoopSource.cpp:
(WTF::GMainLoopSource::create): Deleted.
(WTF::GMainLoopSource::GMainLoopSource): Deleted.
(WTF::GMainLoopSource::~GMainLoopSource): Deleted.
(WTF::GMainLoopSource::isScheduled): Deleted.
(WTF::GMainLoopSource::isActive): Deleted.
(WTF::GMainLoopSource::cancel): Deleted.
(WTF::GMainLoopSource::scheduleIdleSource): Deleted.
(WTF::GMainLoopSource::schedule): Deleted.
(WTF::GMainLoopSource::scheduleTimeoutSource): Deleted.
(WTF::GMainLoopSource::scheduleAfterDelay): Deleted.
(WTF::createMicrosecondsTimeoutSource): Deleted.
(WTF::GMainLoopSource::scheduleAndDeleteOnDestroy): Deleted.
(WTF::GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy): Deleted.
(WTF::GMainLoopSource::prepareVoidCallback): Deleted.
(WTF::GMainLoopSource::finishVoidCallback): Deleted.
(WTF::GMainLoopSource::voidCallback): Deleted.
(WTF::GMainLoopSource::prepareBoolCallback): Deleted.
(WTF::GMainLoopSource::finishBoolCallback): Deleted.
(WTF::GMainLoopSource::boolCallback): Deleted.
(WTF::GMainLoopSource::socketCallback): Deleted.
(WTF::GMainLoopSource::voidSourceCallback): Deleted.
(WTF::GMainLoopSource::boolSourceCallback): Deleted.
(WTF::GMainLoopSource::socketSourceCallback): Deleted.
(WTF::GMainLoopSource::Context::destroySource): Deleted.
* wtf/gobject/GMainLoopSource.h:
(WTF::GMainLoopSource::Context::operator=): Deleted.
* wtf/gobject/GMutexLocker.h:
(WTF::MutexWrapper<GMutex>::lock): Deleted.
(WTF::MutexWrapper<GMutex>::unlock): Deleted.
(WTF::MutexWrapper<GRecMutex>::lock): Deleted.
(WTF::MutexWrapper<GRecMutex>::unlock): Deleted.
(WTF::GMutexLocker::GMutexLocker): Deleted.
(WTF::GMutexLocker::~GMutexLocker): Deleted.
(WTF::GMutexLocker::lock): Deleted.
(WTF::GMutexLocker::unlock): Deleted.
* wtf/gobject/GRefPtr.cpp:
(WTF::refGPtr): Deleted.
(WTF::derefGPtr): Deleted.
* wtf/gobject/GRefPtr.h:
(WTF::GRefPtr::GRefPtr): Deleted.
(WTF::GRefPtr::~GRefPtr): Deleted.
(WTF::GRefPtr::clear): Deleted.
(WTF::GRefPtr::outPtr): Deleted.
(WTF::GRefPtr::isHashTableDeletedValue): Deleted.
(WTF::GRefPtr::get): Deleted.
(WTF::GRefPtr::operator*): Deleted.
(WTF::GRefPtr::operator->): Deleted.
(WTF::GRefPtr::operator!): Deleted.
(WTF::GRefPtr::operator UnspecifiedBoolType): Deleted.
(WTF::GRefPtr::hashTableDeletedValue): Deleted.
(WTF::=): Deleted.
(WTF::GRefPtr<T>::swap): Deleted.
(WTF::swap): Deleted.
(WTF::operator==): Deleted.
(WTF::operator!=): Deleted.
(WTF::static_pointer_cast): Deleted.
(WTF::const_pointer_cast): Deleted.
(WTF::adoptGRef): Deleted.
(WTF::refGPtr): Deleted.
(WTF::derefGPtr): Deleted.
* wtf/gobject/GThreadSafeMainLoopSource.cpp:
(WTF::GThreadSafeMainLoopSource::GThreadSafeMainLoopSource): Deleted.
(WTF::GThreadSafeMainLoopSource::~GThreadSafeMainLoopSource): Deleted.
(WTF::GThreadSafeMainLoopSource::cancel): Deleted.
(WTF::GThreadSafeMainLoopSource::schedule): Deleted.
(WTF::GThreadSafeMainLoopSource::scheduleAfterDelay): Deleted.
(WTF::GThreadSafeMainLoopSource::prepareVoidCallback): Deleted.
(WTF::GThreadSafeMainLoopSource::finishVoidCallback): Deleted.
(WTF::GThreadSafeMainLoopSource::voidCallback): Deleted.
(WTF::GThreadSafeMainLoopSource::prepareBoolCallback): Deleted.
(WTF::GThreadSafeMainLoopSource::finishBoolCallback): Deleted.
(WTF::GThreadSafeMainLoopSource::boolCallback): Deleted.
* wtf/gobject/GUniquePtr.h:
(WTF::GPtrDeleter::operator()): Deleted.
(WTF::GUniqueOutPtr::GUniqueOutPtr): Deleted.
(WTF::GUniqueOutPtr::~GUniqueOutPtr): Deleted.
(WTF::GUniqueOutPtr::outPtr): Deleted.
(WTF::GUniqueOutPtr::release): Deleted.
(WTF::GUniqueOutPtr::operator*): Deleted.
(WTF::GUniqueOutPtr::operator->): Deleted.
(WTF::GUniqueOutPtr::get): Deleted.
(WTF::GUniqueOutPtr::operator!): Deleted.
(WTF::GUniqueOutPtr::operator UnspecifiedBoolType): Deleted.
(WTF::GUniqueOutPtr::reset): Deleted.
* wtf/gobject/GlibUtilities.cpp:
(getCurrentExecutablePath): Deleted.
Tools:
Update header inclusions for headers that have been moved
to Source/WTF/wtf/glib/.
Also move the unit tests under TestWebKitAPI/Tests/WTF/gobject/
to TestWebKitAPI/Tests/WTF/glib/ and update the build rules.
* TestWebKitAPI/PlatformGTK.cmake:
* TestWebKitAPI/Tests/WTF/glib/GMainLoopSource.cpp: Renamed from Tools/TestWebKitAPI/Tests/WTF/gobject/GMainLoopSource.cpp.
(TestWebKitAPI::GMainLoopSourceTest::GMainLoopSourceTest):
(TestWebKitAPI::GMainLoopSourceTest::~GMainLoopSourceTest):
(TestWebKitAPI::GMainLoopSourceTest::runLoop):
(TestWebKitAPI::GMainLoopSourceTest::delayedFinish):
(TestWebKitAPI::GMainLoopSourceTest::finish):
(TestWebKitAPI::GMainLoopSourceTest::source):
(TestWebKitAPI::basicRescheduling):
(TestWebKitAPI::TEST):
(TestWebKitAPI::reentrantRescheduling):
(TestWebKitAPI::cancelRepeatingSourceDuringDispatch):
(TestWebKitAPI::basicDestroyCallbacks):
(TestWebKitAPI::destroyCallbacksAfterCancellingDuringDispatch):
(TestWebKitAPI::destroyCallbacksAfterReschedulingDuringDispatch):
* TestWebKitAPI/Tests/WTF/glib/GUniquePtr.cpp: Renamed from Tools/TestWebKitAPI/Tests/WTF/gobject/GUniquePtr.cpp.
(log):
(takeLogStr):
(TestWebKitAPI::TEST):
(TestWebKitAPI::returnOutChar):
* TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:
* TestWebKitAPI/Tests/WTF/gobject/GMainLoopSource.cpp:
(TestWebKitAPI::GMainLoopSourceTest::GMainLoopSourceTest): Deleted.
(TestWebKitAPI::GMainLoopSourceTest::~GMainLoopSourceTest): Deleted.
(TestWebKitAPI::GMainLoopSourceTest::runLoop): Deleted.
(TestWebKitAPI::GMainLoopSourceTest::delayedFinish): Deleted.
(TestWebKitAPI::GMainLoopSourceTest::finish): Deleted.
(TestWebKitAPI::GMainLoopSourceTest::source): Deleted.
(TestWebKitAPI::basicRescheduling): Deleted.
(TestWebKitAPI::TEST): Deleted.
(TestWebKitAPI::reentrantRescheduling): Deleted.
(TestWebKitAPI::cancelRepeatingSourceDuringDispatch): Deleted.
(TestWebKitAPI::basicDestroyCallbacks): Deleted.
(TestWebKitAPI::destroyCallbacksAfterCancellingDuringDispatch): Deleted.
(TestWebKitAPI::destroyCallbacksAfterReschedulingDuringDispatch): Deleted.
* TestWebKitAPI/Tests/WTF/gobject/GUniquePtr.cpp:
(log): Deleted.
(takeLogStr): Deleted.
(TestWebKitAPI::TEST): Deleted.
(TestWebKitAPI::returnOutChar): Deleted.
* TestWebKitAPI/Tests/WebKit2/gtk/InputMethodFilter.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeFilterTest.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/DOMXPathNSResolverTest.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestAuthentication.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestInspector.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestInspectorServer.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestPrinting.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebExtensions.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitAccessibility.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFindController.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitPolicyClient.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitSettings.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.cpp:
* TestWebKitAPI/Tests/WebKit2Gtk/WebProcessTest.h:
* TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp:
* TestWebKitAPI/gtk/PlatformWebViewGtk.cpp:
* TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h:
* TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.cpp:
* TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestBus.h:
* TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.cpp:
* TestWebKitAPI/gtk/WebKit2Gtk/WebKitTestServer.h:
* WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityControllerAtk.cpp:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.h:
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
* WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
* WebKitTestRunner/InjectedBundle/gtk/InjectedBundleUtilities.cpp:
* WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
* WebKitTestRunner/PlatformGTK.cmake:
* WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
* WebKitTestRunner/gtk/TestControllerGtk.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
yoav@yoav.ws [Fri, 12 Jun 2015 13:17:09 +0000 (13:17 +0000)]
Fix the build when the PICTURE_SIZES flag is off
https://bugs.webkit.org/show_bug.cgi?id=145926
Reviewed by Csaba Osztrogonác.
No new tests since there's no functionality change.
* html/parser/HTMLPreloadScanner.cpp: Remove the guard around the definition of m_sizesAttribute.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Fri, 12 Jun 2015 12:58:36 +0000 (12:58 +0000)]
Network Cache: Use SHA1 for key hash
https://bugs.webkit.org/show_bug.cgi?id=143829
Reviewed by Anders Carlsson.
For consistency with blobs, use SHA1 instead of MD5.
* NetworkProcess/cache/NetworkCacheCoders.cpp:
(WebKit::NetworkCache::Coder<MD5::Digest>::encode): Deleted.
(WebKit::NetworkCache::Coder<MD5::Digest>::decode): Deleted.
No longer needed.
* NetworkProcess/cache/NetworkCacheCoders.h:
* NetworkProcess/cache/NetworkCacheKey.cpp:
(WebKit::NetworkCache::hashString):
(WebKit::NetworkCache::Key::computeHash):
* NetworkProcess/cache/NetworkCacheKey.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Fri, 12 Jun 2015 12:54:26 +0000 (12:54 +0000)]
Unreviewed, rolling out r185492.
https://bugs.webkit.org/show_bug.cgi?id=145927
Causes crashes on debug (Requested by rego on #webkit).
Reverted changeset:
"[CSS Grid Layout] Fix grid-template-areas parsing to avoid
spaces"
https://bugs.webkit.org/show_bug.cgi?id=145860
http://trac.webkit.org/changeset/185492
Patch by Commit Queue <commit-queue@webkit.org> on 2015-06-12
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 12 Jun 2015 12:47:22 +0000 (12:47 +0000)]
Fix mismatched-tags warning in Source/WebKit2/UIProcess/gtk/InputMethodFilter.h
https://bugs.webkit.org/show_bug.cgi?id=145923
Reviewed by Carlos Garcia Campos.
* UIProcess/gtk/InputMethodFilter.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
antti@apple.com [Fri, 12 Jun 2015 10:46:47 +0000 (10:46 +0000)]
Use SHA1 for cache coder checksums
https://bugs.webkit.org/show_bug.cgi?id=145880
Reviewed by Anders Carlsson.
Make cache data error detection more robust by using SHA1 for checksums.
* NetworkProcess/cache/NetworkCacheDecoder.cpp:
(WebKit::NetworkCache::Decoder::Decoder):
(WebKit::NetworkCache::Decoder::decodeFixedLengthData):
(WebKit::NetworkCache::Decoder::decodeNumber):
(WebKit::NetworkCache::Decoder::verifyChecksum):
* NetworkProcess/cache/NetworkCacheDecoder.h:
* NetworkProcess/cache/NetworkCacheEncoder.cpp:
(WebKit::NetworkCache::Encoder::Encoder):
(WebKit::NetworkCache::Encoder::grow):
(WebKit::NetworkCache::Encoder::updateChecksumForData):
(WebKit::NetworkCache::Encoder::encodeFixedLengthData):
(WebKit::NetworkCache::Encoder::encodeNumber):
(WebKit::NetworkCache::Encoder::encodeChecksum):
* NetworkProcess/cache/NetworkCacheEncoder.h:
(WebKit::NetworkCache::Encoder::buffer):
(WebKit::NetworkCache::Encoder::bufferSize):
(WebKit::NetworkCache::Encoder::updateChecksumForNumber):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 12 Jun 2015 10:34:14 +0000 (10:34 +0000)]
[EFL] Fix deprecated declarations warnings related to WK2 versioned structs
https://bugs.webkit.org/show_bug.cgi?id=145913
Reviewed by Gyuyoung Kim.
Source/WebKit2:
* UIProcess/API/efl/ewk_favicon_database.cpp:
(EwkFaviconDatabase::EwkFaviconDatabase):
* UIProcess/efl/ContextHistoryClientEfl.cpp:
(WebKit::ContextHistoryClientEfl::ContextHistoryClientEfl):
* UIProcess/efl/ContextMenuClientEfl.cpp:
(ContextMenuClientEfl::ContextMenuClientEfl):
* UIProcess/efl/DownloadManagerEfl.cpp:
(WebKit::DownloadManagerEfl::DownloadManagerEfl):
* UIProcess/efl/FindClientEfl.cpp:
(WebKit::FindClientEfl::FindClientEfl):
* UIProcess/efl/FormClientEfl.cpp:
(WebKit::FormClientEfl::FormClientEfl):
* UIProcess/efl/PageUIClientEfl.cpp:
(WebKit::PageUIClientEfl::PageUIClientEfl):
Tools:
* TestWebKitAPI/Tests/WebKit2/Geolocation.cpp:
(TestWebKitAPI::setupGeolocationProvider):
* TestWebKitAPI/Tests/WebKit2/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
(TestWebKitAPI::setPageLoaderClient):
* TestWebKitAPI/Tests/WebKit2/UserMessage.cpp:
(TestWebKitAPI::WebKit2UserMessageRoundTripTest::setPageLoaderClient):
* WebKitTestRunner/GeolocationProviderMock.cpp:
(WTR::GeolocationProviderMock::GeolocationProviderMock):
* WebKitTestRunner/WebNotificationProvider.cpp:
(WTR::WebNotificationProvider::provider):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
gyuyoung.kim@webkit.org [Fri, 12 Jun 2015 10:30:43 +0000 (10:30 +0000)]
[EFL] Bump EWebKit version from 1.11.0 to 1.14.0
https://bugs.webkit.org/show_bug.cgi?id=145909
Reviewed by Csaba Osztrogonác.
Bump EWebKit version based on efl library version used by the EWebKit.
* Source/cmake/OptionsEfl.cmake:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ossy@webkit.org [Fri, 12 Jun 2015 10:03:06 +0000 (10:03 +0000)]
Fix the libusrsctp build with clang
https://bugs.webkit.org/show_bug.cgi?id=145128
Reviewed by Gyuyoung Kim.
* efl/jhbuild.modules:
* gtk/jhbuild.modules:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Fri, 12 Jun 2015 09:25:46 +0000 (09:25 +0000)]
Bindings generator should generate code for Promise-based APIs
https://bugs.webkit.org/show_bug.cgi?id=145833
Reviewed by Darin Adler.
Covered by existing tests.
* Modules/webaudio/AudioContext.idl: Removing custom binding for resume, suspend and close.
* bindings/js/JSAudioContextCustom.cpp: Ditto.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Refactoring to use IsReturningPromise.
(GenerateImplementation): Disabling include for return type if it is a promise.
(GenerateParametersCheck): Adding DeferredWrapper() as argument to the DOM method if JS method returns a promise.
(GenerateImplementationFunctionCall): Added support for promise-returning API.
(IsReturningPromise): Checking whether function is returning a promise.
* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_test_promise_function):
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunction):
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
(-[DOMTestObj testPromiseFunction]):
* bindings/scripts/test/TestObj.idl: Adding promise returning function.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
rego@igalia.com [Fri, 12 Jun 2015 08:19:36 +0000 (08:19 +0000)]
[CSS Grid Layout] Fix grid-template-areas parsing to avoid spaces
https://bugs.webkit.org/show_bug.cgi?id=145860
Reviewed by Sergio Villar Senin.
Source/WebCore:
The spec doesn't require to have spaces between unnamed and named areas
in grid-template-areas syntax. But spaces are currently required in our
code.
This was confirmed in the CSS WG mailing list:
https://lists.w3.org/Archives/Public/www-style/2015May/0239.html
This patch updates grid-template-areas parsing to allow the possibility
of removing spaces between unnamed and named areas.
Added new cases to fast/css-grid-layout/grid-template-areas-get-set.html.
* css/CSSParser.cpp:
(WebCore::parseGridTemplateAreasColumnNames): New helper method to
determine the column names split by white spaces or dots.
(WebCore::CSSParser::parseGridTemplateAreasRow): Use the new helper
method to get the column names.
(WebCore::containsOnlyDots): Deleted. Not needed anymore as
parseGridTemplateAreasColumnNames() is using a single dot for unnamed
grid areas (despite of being defined with 1 or more dots).
LayoutTests:
* fast/css-grid-layout/grid-template-areas-get-set-expected.txt:
* fast/css-grid-layout/grid-template-areas-get-set.html: Add new test
cases.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185492
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bshafiei@apple.com [Fri, 12 Jun 2015 07:00:49 +0000 (07:00 +0000)]
Versioning.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mark.lam@apple.com [Fri, 12 Jun 2015 05:39:28 +0000 (05:39 +0000)]
WebCore::reportException() needs to be able to accept a raw thrown value in addition to Exception objects.
https://bugs.webkit.org/show_bug.cgi?id=145872
Reviewed by Michael Saboff.
Source/JavaScriptCore:
In r185259, we changed exception handling code inside the VM to work with
Exception objects instead of the thrown JSValue. The handling code will get the
exception stack trace from the Exception object.
However, there is some code that cannot be updated to pass the Exception object.
An example of this are the ObjC API functions. Those functions are specified to
return any thrown exception JSValue in a JSValueRef. Since these APIs are
public, we cannot arbitrarily change them to use the Exception object.
There are client code that calls these APIs and then passes the returned exception
JSValue to WebCore::reportException() to be reported. WebCore::reportException()
previously relied on the VM::exceptionStackTrace() to provide a cache of the
stack trace of the last thrown exception. VM::exceptionStackTrace() no longer
exists in the current code.
To restore this functionality, we will introduce VM::lastException() which
caches the last thrown Exception object. With this, if the exception passed to
WebCore::reportException() to be reported isn't an Exception object (which has its
own stack trace), reportException() can again use the cached exception stack trace
which is available from VM::lastException().
* heap/Heap.cpp:
(JSC::Heap::visitException):
- visit VM::m_lastException on GCs.
* interpreter/CallFrame.h:
(JSC::ExecState::lastException):
(JSC::ExecState::clearLastException):
- convenience functions to get and clear the last exception.
* runtime/Exception.cpp:
(JSC::Exception::create):
(JSC::Exception::finishCreation):
- add support to create an Exception object without capturing the JS stack trace.
This is needed for making an Exception object to wrap a thrown value that does
not have a stack trace.
Currently, this is only used by WebCore::reportException() when there is no
Exception object and no last exception available to provide a stack trace.
* runtime/Exception.h:
(JSC::Exception::cast): Deleted. No longer needed.
* runtime/VM.h:
(JSC::VM::clearLastException):
(JSC::VM::setException):
(JSC::VM::lastException):
(JSC::VM::addressOfLastException):
- Added support for VM::m_lastException.
VM::m_lastException serves to cache the exception stack of the most recently
thrown exception like VM::exceptionStackTrace() used to before r185259.
* runtime/VMEntryScope.cpp:
(JSC::VMEntryScope::VMEntryScope):
- Clear VM::m_lastException when we re-enter the VM. Exceptions should have been
handled before we re-enter the VM anyway. So, this is a good place to release
the cached last exception.
NOTE: this is also where the old code before r185259 clears the last exception
stack trace. So, we're just restoring the previous behavior here in terms of
the lifecycle of the last exception stack.
Source/WebCore:
API test added: WebKit1.ReportExceptionTest.
* bindings/js/JSDOMBinding.cpp:
(WebCore::reportException):
- Added a version of reportException() that takes a JSValue instead of an Exception
object. This version will ensure that we have an Exception object before calling
into the original reportException() as follows:
1. If the JSValue is already an Exception object, we're good to go.
2. Else, if VM::lastException() is available, use that as the exception.
This is how the old code use to behave (in terms of where it gets the exception
stack trace). The assumption is that reportException() will be called in
a timely manner before the exception stack trace has been purged.
3. Else, create an Exception object with no stack trace. This is the fall back
in case the client did not call reportException() in a timely manner.
- Also clear the last exception after we've reported it. This is how the old code
before r185259 behave (in terms of the lifecycle of the last exception stack
trace). We're restoring that behavior here.
* bindings/js/JSDOMBinding.h:
Source/WebKit/mac:
* WebView/WebView.mm:
(+[WebView _reportException:inContext:]):
- Don't assume we have an Exception object. Let WebCore::reportException() take
care of it.
Source/WebKit/win:
* WebView.cpp:
(WebView::reportException):
- Don't assume we have an Exception object. Let WebCore::reportException() take
care of it.
Source/WebKit2:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::reportException):
- Don't assume we have an Exception object. Let WebCore::reportException() take
care of it.
Tools:
* TestWebKitAPI/Tests/mac/WebViewDidCreateJavaScriptContext.mm:
(-[DidCreateJavaScriptContextFrameLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
- Exercises the JSC ObjC API to call a function which throws an exception. That
exception will be returned as a JSValue instead of an Exception object. We
will use this JSValue to test WebCore::reportException() to confirm that it is
able to handle an exception value which is not an Exception object.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
akling@apple.com [Fri, 12 Jun 2015 04:09:11 +0000 (04:09 +0000)]
jsSubstring() should support creating substrings from substrings.
<https://webkit.org/b/145427>
Reviewed by Geoffrey Garen
Tweak jsSubstring() to support base strings that are themselves substrings.
They will now share the same grandparent base. This avoids creating a new StringImpl.
* runtime/JSString.h:
(JSC::jsSubstring): Don't force rope resolution here. Instead do that in finishCreation()
if the base string is a non-substring rope. Note that resolveRope() is the very last thing
called, since it may allocate and the JSRopeString needs to be ready for marking.
(JSC::JSString::isSubstring): Added a helper to find out if a JSString is
a substring. This is just for internal use, so you don't have to cast to
JSRopeString for the real substringness flag.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 02:59:59 +0000 (02:59 +0000)]
Web Inspector: CSS Regions not displaying DOM Trees in inspector
https://bugs.webkit.org/show_bug.cgi?id=145903
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-11
Reviewed by Timothy Hatcher.
* UserInterface/Controllers/DOMTreeManager.js:
(WebInspector.DOMTreeManager.prototype._updateContentFlowFromPayload):
Fix function inside the assertion to actually return a value.
* UserInterface/Views/DOMTreeOutline.js:
(WebInspector.DOMTreeOutline.prototype.update):
For DOMTreeOutlines without a root node, don't clear the tree on updates,
since that will clear the nodes that have already been added explicitly.
* UserInterface/Views/ResourceSidebarPanel.js:
(WebInspector.ResourceSidebarPanel.prototype._treeElementSelected):
* UserInterface/Views/ResourcesTabContentView.js:
(WebInspector.ResourcesTabContentView.prototype.canShowRepresentedObject):
ResourceTab and sidebar can deal with ContentFlow related views.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185485
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
zalan@apple.com [Fri, 12 Jun 2015 02:49:12 +0000 (02:49 +0000)]
Do not crash when the descendant frame tree is destroyed during layout.
https://bugs.webkit.org/show_bug.cgi?id=144540
rdar://problem/
20793184
Reviewed by Andreas Kling.
Source/WebCore:
Widget::setFrameRect(), through WebHTMLView layout, could trigger a style recalc, which in turn
could initiate an onBeforeLoad callback.
If javascript happens to destroy the current iframe in the onBeforeLoad callback, we lose the descendant
render tree, including the child FrameView (the iframe element's view). However the RenderIFrame
object stays protected until after the layout is done. (see protectRenderWidgetUntilLayoutIsDone())
Climbing back on the callstack, we need to make sure that
1. the root widget of the descendant render tree (FrameView) stays valid as long as it is needed.
2. RenderFrameBase::layoutWithFlattening() can handle the case when the associated widget (child FrameView) is set to nullptr.
(see RenderWidget::willBeDestroyed() -> setWidget(nullptr))
(and later, when layout is finished this (RenderIFrame) object gets destroyed too.)
Covered by fast/frames/flattening/crash-remove-iframe-during-object-beforeload.html.
* page/FrameView.cpp:
(WebCore::FrameView::setFrameRect):
(WebCore::FrameView::updateEmbeddedObject):
(WebCore::FrameView::updateWidgetPositions):
* platform/ScrollView.cpp:
(WebCore::ScrollView::setFrameRect):
* platform/mac/WidgetMac.mm:
(WebCore::Widget::setFrameRect):
* rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::layoutWithFlattening):
(WebCore::RenderFrameBase::childRenderView):
(WebCore::RenderFrameBase::peformLayoutWithFlattening):
* rendering/RenderFrameBase.h:
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::updateWidgetPosition):
* rendering/RenderWidget.h:
LayoutTests:
Unskip fast/frames/flattening/crash-remove-iframe-during-object-beforeload.html.
* TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185484
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 02:16:28 +0000 (02:16 +0000)]
Move cursor to corner and fix safari window size before running benchmark
https://bugs.webkit.org/show_bug.cgi?id=145858
Patch by Dewei Zhu <dewei_zhu@apple.com> on 2015-06-11
Reviewed by Ryosuke Niwa
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py:
(OSXBrowserDriver.prepareEnv):
(OSXBrowserDriver):
(OSXBrowserDriver.moveCursor):
(OSXBrowserDriver.getScreenSize):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
(OSXChromeDriver.launchUrl):
(OSXChromeCanaryDriver.launchUrl):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py:
(OSXFirefoxDriver.launchUrl):
(OSXFirefoxNightlyDriver.launchUrl):
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
(OSXSafariDriver.prepareEnv):
(OSXSafariDriver):
(OSXSafariDriver.maximizeWindow):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
clopez@igalia.com [Fri, 12 Jun 2015 01:46:42 +0000 (01:46 +0000)]
[CMake] Unreviewed build fix after r185479.
* CMakeLists.txt: Unlist the files that r185479 deleted.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Fri, 12 Jun 2015 00:21:01 +0000 (00:21 +0000)]
Unreviewed, rolling out r185470.
https://bugs.webkit.org/show_bug.cgi?id=145902
Caused ASan violations (Requested by ap on #webkit).
Reverted changeset:
"Add an appearance keyword for wireless playback / airplay
icon"
https://bugs.webkit.org/show_bug.cgi?id=145892
http://trac.webkit.org/changeset/185470
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson@apple.com [Fri, 12 Jun 2015 00:17:32 +0000 (00:17 +0000)]
IndexedDB onupgradeneeded event has incorrect value for oldVersion.
<rdar://problem/
18309792> and https://bugs.webkit.org/show_bug.cgi?id=136888
Reviewed by Sam Weinig.
Source/WebCore:
Test: storage/indexeddb/version-change-event-basic.html
"NoIntVersion" is an internal bookkeeping concept that we never should've been passing to Javascript.
This cleans up things by:
- Adjusting an old version of "NoIntVersion" to "0" before making the version change callback.
- Removing the VersionNullness parameter from almost everywhere.
- Removing the nullability of the newVersion parameter from the IDL.
* Modules/indexeddb/IDBDatabase.cpp:
(WebCore::IDBDatabase::onVersionChange):
* Modules/indexeddb/IDBDatabase.h:
* Modules/indexeddb/IDBDatabaseBackend.cpp:
(WebCore::IDBDatabaseBackend::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackend::deleteDatabase):
* Modules/indexeddb/IDBDatabaseCallbacks.h:
* Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
(WebCore::IDBDatabaseCallbacksImpl::onVersionChange):
* Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
* Modules/indexeddb/IDBOpenDBRequest.cpp:
(WebCore::IDBOpenDBRequest::onBlocked):
(WebCore::IDBOpenDBRequest::onUpgradeNeeded):
* Modules/indexeddb/IDBTransactionBackendOperations.cpp:
(WebCore::IDBDatabaseBackend::VersionChangeOperation::perform):
* Modules/indexeddb/IDBVersionChangeEvent.cpp:
(WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
* Modules/indexeddb/IDBVersionChangeEvent.h:
(WebCore::IDBVersionChangeEvent::create):
(WebCore::IDBVersionChangeEvent::newVersion):
* Modules/indexeddb/IDBVersionChangeEvent.idl:
LayoutTests:
* storage/indexeddb/version-change-event-basic-expected.txt: Added.
* storage/indexeddb/version-change-event-basic.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Fri, 12 Jun 2015 00:13:41 +0000 (00:13 +0000)]
Get rid of WebOriginDataManager
https://bugs.webkit.org/show_bug.cgi?id=145896
Reviewed by Andreas Kling.
* DatabaseProcess/DatabaseProcess.cpp:
(WebKit::DatabaseProcess::DatabaseProcess): Deleted.
(WebKit::DatabaseProcess::getOrigins): Deleted.
(WebKit::DatabaseProcess::deleteEntriesForOrigin): Deleted.
(WebKit::DatabaseProcess::deleteEntriesModifiedBetweenDates): Deleted.
(WebKit::DatabaseProcess::deleteAllEntries): Deleted.
* DatabaseProcess/DatabaseProcess.h:
* DerivedSources.make:
* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/WKContext.cpp:
* UIProcess/Databases/DatabaseProcessProxy.cpp:
(WebKit::DatabaseProcessProxy::didReceiveMessage): Deleted.
* UIProcess/WebOriginDataManagerProxy.cpp: Removed.
(WebKit::WebOriginDataManagerProxy::supplementName): Deleted.
(WebKit::WebOriginDataManagerProxy::create): Deleted.
(WebKit::WebOriginDataManagerProxy::WebOriginDataManagerProxy): Deleted.
(WebKit::WebOriginDataManagerProxy::~WebOriginDataManagerProxy): Deleted.
(WebKit::WebOriginDataManagerProxy::processPoolDestroyed): Deleted.
(WebKit::WebOriginDataManagerProxy::processDidClose): Deleted.
(WebKit::WebOriginDataManagerProxy::shouldTerminate): Deleted.
(WebKit::WebOriginDataManagerProxy::refWebContextSupplement): Deleted.
(WebKit::WebOriginDataManagerProxy::derefWebContextSupplement): Deleted.
(WebKit::CallbackSynchronizer::create): Deleted.
(WebKit::CallbackSynchronizer::~CallbackSynchronizer): Deleted.
(WebKit::CallbackSynchronizer::taskStarted): Deleted.
(WebKit::CallbackSynchronizer::taskCompleted): Deleted.
(WebKit::CallbackSynchronizer::CallbackSynchronizer): Deleted.
(WebKit::createSynchronizedCallback): Deleted.
(WebKit::sendMessageToAllProcessesInProcessPool): Deleted.
(WebKit::WebOriginDataManagerProxy::getOrigins): Deleted.
(WebKit::WebOriginDataManagerProxy::didGetOrigins): Deleted.
(WebKit::WebOriginDataManagerProxy::deleteEntriesForOrigin): Deleted.
(WebKit::WebOriginDataManagerProxy::deleteEntriesModifiedBetweenDates): Deleted.
(WebKit::WebOriginDataManagerProxy::didDeleteEntries): Deleted.
(WebKit::WebOriginDataManagerProxy::deleteAllEntries): Deleted.
(WebKit::WebOriginDataManagerProxy::didDeleteAllEntries): Deleted.
* UIProcess/WebOriginDataManagerProxy.h: Removed.
* UIProcess/WebOriginDataManagerProxy.messages.in: Removed.
* UIProcess/WebProcessPool.cpp:
* WebKit2.xcodeproj/project.pbxproj:
* WebProcess/OriginData/WebOriginDataManager.cpp: Removed.
(WebKit::WebOriginDataManager::WebOriginDataManager): Deleted.
(WebKit::WebOriginDataManager::getOrigins): Deleted.
(WebKit::WebOriginDataManager::deleteEntriesForOrigin): Deleted.
(WebKit::WebOriginDataManager::deleteEntriesModifiedBetweenDates): Deleted.
(WebKit::WebOriginDataManager::deleteAllEntries): Deleted.
* WebProcess/OriginData/WebOriginDataManager.h: Removed.
* WebProcess/OriginData/WebOriginDataManager.messages.in: Removed.
* WebProcess/OriginData/WebOriginDataManagerSupplement.h: Removed.
(WebKit::WebOriginDataManagerSupplement::WebOriginDataManagerSupplement): Deleted.
(WebKit::WebOriginDataManagerSupplement::~WebOriginDataManagerSupplement): Deleted.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
* WebProcess/WebPage/WebPage.cpp:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::~WebProcess):
(WebKit::WebProcess::WebProcess): Deleted.
(WebKit::WebProcess::getOrigins): Deleted.
(WebKit::WebProcess::deleteEntriesForOrigin): Deleted.
(WebKit::WebProcess::deleteEntriesModifiedBetweenDates): Deleted.
(WebKit::WebProcess::deleteAllEntries): Deleted.
* WebProcess/WebProcess.h:
* WebProcess/cocoa/WebProcessCocoa.mm:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185479
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Thu, 11 Jun 2015 22:30:52 +0000 (22:30 +0000)]
[iOS] Cannot run run-webkit-tests with public SDK; LayoutTestRelay fails to build
https://bugs.webkit.org/show_bug.cgi?id=145319
Reviewed by David Kilzer.
Add SPI wrapper header for CoreSimulator and update the source files to reference
it instead of directly referencing the CoreSimulator header.
* LayoutTestRelay/LayoutTestRelay.xcodeproj/project.pbxproj:
* LayoutTestRelay/LayoutTestRelay/CoreSimulatorSPI.h: Added.
* LayoutTestRelay/LayoutTestRelay/LTRelayController.m:
* LayoutTestRelay/LayoutTestRelay/main.m:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 11 Jun 2015 21:49:49 +0000 (21:49 +0000)]
Media Session: Add plumbing for media control event delivery.
https://bugs.webkit.org/show_bug.cgi?id=145859
Patch by Matt Rajca <mrajca@apple.com> on 2015-06-11
Reviewed by Anders Carlsson.
Source/WebCore:
* Modules/mediasession/MediaEventTypes.h: Added.
* WebCore.xcodeproj/project.pbxproj:
* page/Page.cpp:
(WebCore::Page::handleMediaEvent): Toggle media playback upon receiving the PlayPause event as described in the spec.
* page/Page.h:
Source/WebKit2:
* UIProcess/API/C/WKPage.cpp:
(WKPageHandleMediaEvent):
* UIProcess/API/C/WKPagePrivate.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::handleMediaEvent):
* UIProcess/WebPageProxy.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::handleMediaEvent):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 11 Jun 2015 21:40:22 +0000 (21:40 +0000)]
Web Inspector: IndexedDB data not showing for MDN example page
https://bugs.webkit.org/show_bug.cgi?id=145851
Patch by Joseph Pecoraro <pecoraro@apple.com> on 2015-06-11
Reviewed by Anders Carlsson.
* UserInterface/Views/StorageSidebarPanel.js:
(WebInspector.StorageSidebarPanel.prototype._indexedDatabaseWasAdded):
Fix typo in Storage tab refactoring that was causing an
uncaught exception and not showing Indexed DBs.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mmaxfield@apple.com [Thu, 11 Jun 2015 21:29:56 +0000 (21:29 +0000)]
[OS X] Decoding fonts may return nil when using force click
https://bugs.webkit.org/show_bug.cgi?id=145890
Reviewed by Beth Dakin.
[NSFontDescriptor fontDescriptorWithFontAttributes] might return nil, which
causes the encoding of an NSFont to erroneously return true.
* Shared/mac/ArgumentCodersMac.mm:
(IPC::decode):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 11 Jun 2015 21:11:45 +0000 (21:11 +0000)]
Reimplement WKOriginDataManager in terms of API::WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=145889
Reviewed by Dan Bernstein.
* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextGetOriginDataManager):
* UIProcess/API/C/WKOriginDataManager.cpp:
(WKOriginDataManagerGetTypeID):
(WKOriginDataManagerGetOrigins):
(WKOriginDataManagerDeleteEntriesForOrigin):
(WKOriginDataManagerDeleteEntriesModifiedBetweenDates):
(WKOriginDataManagerDeleteAllEntries):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bfulgham@apple.com [Thu, 11 Jun 2015 21:06:23 +0000 (21:06 +0000)]
Full screen video space can be resized to 1pt wide
https://bugs.webkit.org/show_bug.cgi?id=145895
<rdar://problem/
20907914>
Reviewed by Simon Fraser.
Prior to the upcoming OS X, full screen mode was not resizable. Now that it is,
we need to set a minimum window width that is large enough to hold the media
controls. This makes our full-screen video behave the same as the QuickTimeX player.
* UIProcess/mac/WKFullScreenWindowController.mm:
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Active that new
kWKLayoutModeDynamicSizeWithMinimumViewSize style, and set the minimum view size to
be the width of our media controls, with 20 pixels of padding on either side.
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]): Set the layout
mode back to the default style.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
jonlee@apple.com [Thu, 11 Jun 2015 20:53:49 +0000 (20:53 +0000)]
Update media controls JS and CSS to use picture-in-picture
https://bugs.webkit.org/show_bug.cgi?id=145827
<rdar://problem/
21311576>
Reviewed by Dean Jackson.
Source/WebCore:
* English.lproj/mediaControlsLocalizedStrings.js: Update localized strings.
Add a string for the placeholder text, and for the aria-label of the
placard.
* Modules/mediacontrols/MediaControlsHost.idl: Remove uncalled functions.
* Modules/mediacontrols/MediaControlsHost.h: Also remove optimizedFullscreenSupported(),
which was never used.
* Modules/mediacontrols/MediaControlsHost.cpp: Remove uncalled functions and media part IDs.
(WebCore::MediaControlsHost::enterFullscreenOptimized): Deleted.
(WebCore::MediaControlsHost::mediaUIImageData): Deleted.
* Modules/mediacontrols/mediaControlsApple.css:
(audio::-webkit-media-controls-picture-in-picture-button): Update pseudo-element name.
(audio::-webkit-media-controls-optimized-fullscreen-button): Deleted.
* Modules/mediacontrols/mediaControlsApple.js: Update global variable name, and classes.
(Controller.prototype.createControls): Update button name. Add aria-label to the placeholder.
(Controller.prototype.updateFullscreenButtons):
(Controller.prototype.updateLayoutForDisplayedWidth):
(Controller.prototype.handlePictureInPictureButtonClicked): Update handler names.
(Controller.prototype.handleOptimizedFullscreenButtonClicked): Deleted.
* Modules/mediacontrols/mediaControlsiOS.css: Rename pseudo-element.
(audio::-webkit-media-controls-picture-in-picture-button): Add mask images.
(audio::-webkit-media-controls-picture-in-picture-button:active):
(video::-webkit-media-controls-picture-in-picture-button):
(video::-webkit-media-controls-picture-in-picture-button.return-from-picture-in-picture):
(audio::-webkit-media-controls-wireless-playback-status.picture-in-picture):
(audio::-webkit-media-controls-wireless-playback-text-top.picture-in-picture):
(audio::-webkit-media-controls-wireless-playback-text-bottom.picture-in-picture):
(audio::-webkit-media-controls-optimized-fullscreen-button): Deleted.
(audio::-webkit-media-controls-optimized-fullscreen-button:active): Deleted.
(video::-webkit-media-controls-optimized-fullscreen-button): Deleted.
(audio::-webkit-media-controls-wireless-playback-status.optimized): Deleted. The placard
pseudo-element should be updated from wireless-playback-status to just playback-status
since it serves both for pip and AirPlay.
(audio::-webkit-media-controls-wireless-playback-text-top.optimized): Deleted.
(audio::-webkit-media-controls-wireless-playback-text-bottom.optimized): Deleted.
* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.createControls): Update button names.
(ControllerIOS.prototype.configureInlineControls):
(ControllerIOS.prototype.handlePictureInPictureButtonClicked): Update handler name.
(ControllerIOS.prototype.handlePictureInPictureTouchStart):
(ControllerIOS.prototype.handlePictureInPictureTouchEnd):
(ControllerIOS.prototype.handlePictureInPictureTouchCancel):
(ControllerIOS.prototype.handlePresentationModeChange): Remove changes to the inline bg
image style, and rely on the CSS to fill those in. Use localized strings for the placard.
Move the aria-label to createControls().
(ControllerIOS.prototype.handleOptimizedFullscreenButtonClicked): Deleted.
(ControllerIOS.prototype.handleOptimizedFullscreenTouchStart): Deleted.
(ControllerIOS.prototype.handleOptimizedFullscreenTouchEnd): Deleted.
(ControllerIOS.prototype.handleOptimizedFullscreenTouchCancel): Deleted.
* html/HTMLMediaElement.cpp: Remove enterFullscreenOptimized since it is never called.
(WebCore::HTMLMediaElement::enterFullscreenOptimized): Deleted.
* html/HTMLMediaElement.h:
* platform/ios/WebCoreSystemInterfaceIOS.h: Remove wkGetMediaUIImageData.
* platform/ios/WebCoreSystemInterfaceIOS.mm:
* rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::mediaControlsStyleSheet): Remove calls to wkGetMediaUIImageData.
Source/WebKit/mac:
* WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Deleted GetMediaUIImageData.
Source/WebKit2:
* WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface): Deleted GetMediaUIImageData.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 11 Jun 2015 20:51:11 +0000 (20:51 +0000)]
Web Inspector: font-family names interpreted as color
https://bugs.webkit.org/show_bug.cgi?id=123468
Patch by Devin Rousso <drousso@apple.com> on 2015-06-11
Reviewed by Timothy Hatcher.
* UserInterface/Views/CodeMirrorAdditions.js: Added logic to prevent color picker buttons from appearing before colors that come after a quote character (both " and ').
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dino@apple.com [Thu, 11 Jun 2015 20:50:34 +0000 (20:50 +0000)]
Add an appearance keyword for wireless playback / airplay icon
https://bugs.webkit.org/show_bug.cgi?id=145892
<rdar://problem/
21344872>
Reviewed by Simon Fraser.
Source/WebCore:
Add a new "-webkit-appearance" value named "-apple-airplay"
which will be used to render an icon. This change simply
adds support for the value, and puts in hooks for drawing.
At the moment this is only going to be used by Airplay, so
the public-facing name is "-apple-airplay". However, the
implementation in Theme has a more generic name, in case
we hook it up for other ports later.
Test: fast/css/appearance-airplay.html
* css/CSSParser.cpp:
(WebCore::cssValueKeywordID): This new keyword should not get
translated into having a -webkit prefix.
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue): New mapping from
the Theme to the CSS value.
* css/CSSValueKeywords.in: Add "-apple-airplay".
* platform/ThemeTypes.h: New ControlPart.
* rendering/RenderTheme.cpp: Stub implementation of the rendering and
style update for the new appearance.
(WebCore::RenderTheme::adjustStyle):
(WebCore::RenderTheme::paint):
(WebCore::RenderTheme::adjustWirelessPlaybackIconStyle):
(WebCore::RenderTheme::paintWirelessPlaybackIcon):
* rendering/RenderTheme.h:
* rendering/RenderThemeMac.h:
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::adjustWirelessPlaybackIconStyle):
(WebCore::RenderThemeMac::paintWirelessPlaybackIcon):
LayoutTests:
Simple test that makes sure we parse and evaluate
the new appearance value.
* fast/css/appearance-airplay-expected.txt: Added.
* fast/css/appearance-airplay.html: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap@apple.com [Thu, 11 Jun 2015 20:23:34 +0000 (20:23 +0000)]
Update plugins/embed-attributes-style.html to not use the QuickTime plug-in
https://bugs.webkit.org/show_bug.cgi?id=145891
Reviewed by Anders Carlsson.
* platform/mac/plugins/embed-attributes-style-expected.png:
* plugins/embed-attributes-style.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 11 Jun 2015 20:21:07 +0000 (20:21 +0000)]
Unreviewed, rolling out r185464.
https://bugs.webkit.org/show_bug.cgi?id=145894
"This patch is breaking binding tests" (Requested by youenn on
#webkit).
Reverted changeset:
"Bindings generator should generate code for Promise-based
APIs"
https://bugs.webkit.org/show_bug.cgi?id=145833
http://trac.webkit.org/changeset/185464
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
commit-queue@webkit.org [Thu, 11 Jun 2015 20:12:39 +0000 (20:12 +0000)]
Unreviewed, rolling out r185465.
https://bugs.webkit.org/show_bug.cgi?id=145893
"This patch is breaking 32bit mac build" (Requested by youenn
on #webkit).
Reverted changeset:
"[Streams API] ReadableJSStream should handle promises
returned by JS source start callback"
https://bugs.webkit.org/show_bug.cgi?id=145792
http://trac.webkit.org/changeset/185465
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
achristensen@apple.com [Thu, 11 Jun 2015 20:09:37 +0000 (20:09 +0000)]
Speculative build fix for GTK after r185463.
* CMakeLists.txt:
Remove WebPluginSiteDataManager.cpp from CMake build.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Thu, 11 Jun 2015 19:30:25 +0000 (19:30 +0000)]
[Streams API] ReadableJSStream should handle promises returned by JS source start callback
https://bugs.webkit.org/show_bug.cgi?id=145792
Source/JavaScriptCore:
Reviewed by Darin Adler.
Added support for JSFunction implemented by std::function.
* runtime/JSFunction.cpp:
(JSC::getNativeExecutable): Refactored code to share it with the two JSFunction::create
(JSC::JSFunction::create):
(JSC::runStdFunction):
* runtime/JSFunction.h: Added std::function based JSFunction::create prototype.
* runtime.JSPromise.h:
Source/WebCore:
Reviewed by Darin Adler.
Covered by rebased tests.
When calling start callback, the returned value is checked.
If it is not a promise, we do as if it is a resolved promise.
If it is a promise, we call its then() method with two resolve/reject JS functions.
* Modules/streams/ReadableStream.cpp:
* bindings/js/ReadableJSStream.cpp:
(WebCore::ReadableJSStream::invoke): Returns a JSPromise* if any is returned by the JS source callback.
(WebCore::thenPromise): Utility method to call the promise.
(WebCore::createStartResultFulfilledFunction): The promise resolve callback.
(WebCore::ReadableJSStream::doStart): Calls thenPromise if a JSPromise* is returned by invoke.
(WebCore::ReadableJSStream::ReadableJSStream):
* bindings/js/ReadableJSStream.h:
LayoutTests:
Reviewed by Darin Adler.
Rebasing expectations, and removing timeouts for tests that no longer timeout.
* streams/reference-implementation/readable-stream-expected.txt:
* streams/reference-implementation/readable-stream.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
youenn.fablet@crf.canon.fr [Thu, 11 Jun 2015 19:26:47 +0000 (19:26 +0000)]
Bindings generator should generate code for Promise-based APIs
https://bugs.webkit.org/show_bug.cgi?id=145833
Reviewed by Darin Adler.
Covered by existing tests.
* Modules/webaudio/AudioContext.idl: Removing custom binding for resume, suspend and close.
* bindings/js/JSAudioContextCustom.cpp: Ditto.
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader): Refactoring to use IsReturningPromise.
(GenerateImplementation): Disabling include for return type if it is a promise.
(GenerateParametersCheck): Adding DeferredWrapper() as argument to the DOM method if JS method returns a promise.
(GenerateImplementationFunctionCall): Added support for promise-returning API.
(IsReturningPromise): Checking whether function is returning a promise.
* bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_test_promise_function):
* bindings/scripts/test/GObject/WebKitDOMTestObj.h:
* bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::jsTestObjPrototypeFunctionTestPromiseFunction):
* bindings/scripts/test/ObjC/DOMTestObj.h:
* bindings/scripts/test/ObjC/DOMTestObj.mm:
(-[DOMTestObj testPromiseFunction]):
* bindings/scripts/test/TestObj.idl: Adding promise returning function.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 11 Jun 2015 18:33:51 +0000 (18:33 +0000)]
Remove WebPluginSiteDataManager
https://bugs.webkit.org/show_bug.cgi?id=145884
Reviewed by Andreas Kling.
* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::clearSiteData): Deleted.
* PluginProcess/PluginProcess.h:
* PluginProcess/PluginProcess.messages.in:
* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/WKContext.cpp:
* UIProcess/API/C/WKPluginSiteDataManager.cpp:
* UIProcess/Plugins/PluginProcessManager.cpp:
(WebKit::PluginProcessManager::clearSiteData): Deleted.
* UIProcess/Plugins/PluginProcessManager.h:
* UIProcess/Plugins/PluginProcessProxy.cpp:
(WebKit::PluginProcessProxy::clearSiteData): Deleted.
(WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch): Deleted.
(WebKit::PluginProcessProxy::didFinishLaunching): Deleted.
(WebKit::PluginProcessProxy::didClearSiteData): Deleted.
* UIProcess/Plugins/PluginProcessProxy.h:
* UIProcess/Plugins/PluginProcessProxy.messages.in:
* UIProcess/Plugins/WebPluginSiteDataManager.cpp: Removed.
(WebKit::WebPluginSiteDataManager::GetSitesWithDataState::GetSitesWithDataState): Deleted.
(WebKit::WebPluginSiteDataManager::GetSitesWithDataState::getSitesWithDataForNextPlugin): Deleted.
(WebKit::WebPluginSiteDataManager::GetSitesWithDataState::didGetSitesWithDataForSinglePlugin): Deleted.
(WebKit::WebPluginSiteDataManager::ClearSiteDataState::ClearSiteDataState): Deleted.
(WebKit::WebPluginSiteDataManager::ClearSiteDataState::clearSiteDataForNextPlugin): Deleted.
(WebKit::WebPluginSiteDataManager::ClearSiteDataState::didClearSiteDataForSinglePlugin): Deleted.
(WebKit::WebPluginSiteDataManager::create): Deleted.
(WebKit::WebPluginSiteDataManager::WebPluginSiteDataManager): Deleted.
(WebKit::WebPluginSiteDataManager::~WebPluginSiteDataManager): Deleted.
(WebKit::WebPluginSiteDataManager::invalidate): Deleted.
(WebKit::WebPluginSiteDataManager::getSitesWithData): Deleted.
(WebKit::WebPluginSiteDataManager::didGetSitesWithData): Deleted.
(WebKit::WebPluginSiteDataManager::clearSiteData): Deleted.
(WebKit::WebPluginSiteDataManager::didClearSiteData): Deleted.
(WebKit::WebPluginSiteDataManager::didGetSitesWithDataForSinglePlugin): Deleted.
(WebKit::WebPluginSiteDataManager::didGetSitesWithDataForAllPlugins): Deleted.
(WebKit::WebPluginSiteDataManager::didClearSiteDataForSinglePlugin): Deleted.
(WebKit::WebPluginSiteDataManager::didClearSiteDataForAllPlugins): Deleted.
* UIProcess/Plugins/WebPluginSiteDataManager.h: Removed.
(WebKit::WebPluginSiteDataManager::processPool): Deleted.
(WebKit::WebPluginSiteDataManager::clearProcessPool): Deleted.
* UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::~WebProcessPool): Deleted.
* UIProcess/WebProcessPool.h:
* UIProcess/WebProcessProxy.cpp:
* WebKit2.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
simon.fraser@apple.com [Thu, 11 Jun 2015 18:01:44 +0000 (18:01 +0000)]
Missing content in UIWebView snapshots sometimes
https://bugs.webkit.org/show_bug.cgi?id=145779
rdar://problem/
20744708
Reviewed by Darin Adler.
When expanding collapsed parts of quoted text on iOS, sometimes the "concertina"
images would be blank. This happened because we'd fail to create tiles for regions
outside the LegacyTileCache's visibleRect.
Fix by giving LegacyTileCache an optional override visibleRect, which is set
and cleared during -renderInContext: using the context clip rect.
* platform/ios/LegacyTileCache.h:
* platform/ios/LegacyTileCache.mm:
(WebCore::LegacyTileCache::visibleRectInLayer):
(WebCore::LegacyTileCache::setOverrideVisibleRect):
* platform/ios/LegacyTileLayer.mm:
(-[LegacyTileHostLayer renderInContext:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca@apple.com [Thu, 11 Jun 2015 17:45:35 +0000 (17:45 +0000)]
Make WKWebsiteDataStoreRef backed by an API::WebsiteDataStore
https://bugs.webkit.org/show_bug.cgi?id=145882
Reviewed by Dan Bernstein.
* UIProcess/API/C/WKAPICast.h:
* UIProcess/API/C/WKContext.cpp:
(WKContextGetPluginSiteDataManager):
* UIProcess/API/C/WKPluginSiteDataManager.cpp:
(WKPluginSiteDataManagerGetTypeID):
(WKPluginSiteDataManagerGetSitesWithData):
(WKPluginSiteDataManagerClearSiteData):
(WKPluginSiteDataManagerClearAllSiteData):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
dbates@webkit.org [Thu, 11 Jun 2015 17:20:53 +0000 (17:20 +0000)]
Simplify event handling logic for search cancel button
https://bugs.webkit.org/show_bug.cgi?id=145780
Reviewed by Darin Adler.
Following the patch for <https://bugs.webkit.org/show_bug.cgi?id=145774> we can take advantage
of the DOM click event to simplify the event handling logic for the search cancel button.
It is sufficient to listen for mousedown and click events instead of listening for mousedown
and mouseup events, capturing all events during drag, and using the hover state of the button
on mouse release together with a instance variable set on mouse press to determine whether
the cancel button was clicked.
As a side effect of removing the requirement that the search cancel button be hovered (a
workaround to ensure that the mouse was pressed and released on the button in absence of
listening for an explicit DOM click event) we can remove the accessibility-specific class,
AccessibilitySearchFieldCancelButton, that was primarily used to fake the hover state of
the button so that the accessibility machinery could simulate a click on it. Instead we
can add use the default accessibility machinery for clicking on an element.
No new tests since no functionality was changed.
* CMakeLists.txt: Remove reference to file AccessibilitySearchFieldButtons.cpp.
* WebCore.vcxproj/WebCore.vcxproj: Remove reference to files AccessibilitySearchFieldButtons.{cpp, h}.
* WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* accessibility/AXObjectCache.cpp:
(WebCore::createFromRenderer): Remove special-purpose logic that instantiated
AccessibilitySearchFieldCancelButton for the search cancel button. Instead we can make
use of the existing accessibility machinery to handle this button.
* accessibility/AccessibilityAllInOne.cpp: Remove #include of AccessibilitySearchFieldButtons.cpp
since the file is no longer needed.
* accessibility/AccessibilitySearchFieldButtons.cpp: Removed.
* accessibility/AccessibilitySearchFieldButtons.h: Removed.
* dom/Element.h:
(WebCore::Element::isSearchFieldCancelButtonElement): Deleted.
* html/shadow/TextControlInnerElements.cpp:
(WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement): Set the ARIA role
and label attributes so that the accessibility system identifies the search cancel button as
a button and shows a description for the button, respectively.
(WebCore::SearchFieldCancelButtonElement::defaultEventHandler): Simplify the event handling logic
such that we clear the field when we receive a DOM click event (i.e. the mouse was pressed
and released on the button). Remove unused variable, oldValue. Substitute emptyString() for the
empty string literal in the call to HTMLInputElement::setValueForUser() to avoid an implicit
conversion to String. Also remove out-of-date comment that repeated what the code does.
(WebCore::SearchFieldCancelButtonElement::willDetachRenderers): Deleted. We no longer need to use
custom style resolve callbacks to reset the state of the EventHandler since we no longer need to
have the EventHandler dispatch all mouse events to us on mouse press.
* html/shadow/TextControlInnerElements.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc