WebKit-https.git
6 years ago[GTK] [CMake] Add a "make dist" target
mrobinson@webkit.org [Thu, 30 Jan 2014 22:34:15 +0000 (22:34 +0000)]
[GTK] [CMake] Add a "make dist" target
https://bugs.webkit.org/show_bug.cgi?id=116378

Reviewed by Gustavo Noronha Silva.

.:

* Source/PlatformGTK.cmake: A CMake support for executing the make-dist
script and then turning the tarfile into a LZMA compressed file.

Source/WebCore:

* CMakeLists.txt: Don't build WebKitVersion.h for WebKitGTK+. We don't use it
and we don't want to distribute the dependency.

Tools:

Added a script that reads a manifest file an produces a tarball. Also add
the manifest.

* gtk/make-dist.py: Added.
* gtk/manifest.txt: Added.

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

6 years agoIDB: ObjectStore cursor advance() support
beidson@apple.com [Thu, 30 Jan 2014 22:23:24 +0000 (22:23 +0000)]
IDB: ObjectStore cursor advance() support
<rdar://problem/15779645> and https://bugs.webkit.org/show_bug.cgi?id=127866

Reviewed by Sam Weinig.

Source/WebCore:

Add IDBKeyData sorting for database collation:
* Modules/indexeddb/IDBKeyData.cpp:
(WebCore::IDBKeyData::compare):
* Modules/indexeddb/IDBKeyData.h:

* WebCore.exp.in:

* platform/sql/SQLiteTransaction.h:
(WebCore::SQLiteTransaction::database):

Source/WebKit2:

Plumb calls through to the backing store:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::openCursorInBackingStore):
(WebKit::UniqueIDBDatabase::advanceCursorInBackingStore):
(WebKit::UniqueIDBDatabase::iterateCursorInBackingStore):

* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): Update schema
  for Records table.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::resetTransaction):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::openCursor): Create a SQLiteIDBCursor object.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::advanceCursor): Call through to that object.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::iterateCursor): Ditto.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::idbKeyCollate): Renamed for clarity.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::unregisterCursor): Cleanup open cursors.
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp: Added.
(WebKit::SQLiteIDBCursor::maybeCreate):
(WebKit::SQLiteIDBCursor::SQLiteIDBCursor):
(WebKit::SQLiteIDBCursor::establishStatement):
(WebKit::SQLiteIDBCursor::createIndexCursorStatement): Stubbed for now.
(WebKit::SQLiteIDBCursor::createObjectStoreCursorStatement): Create the appropriate query for
  the passed in IDBKeyRange.
(WebKit::SQLiteIDBCursor::advance): Step through that query.
(WebKit::SQLiteIDBCursor::iterate): Stubbed for now.
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.h: Added.
(WebKit::SQLiteIDBCursor::identifier):
(WebKit::SQLiteIDBCursor::transaction):
(WebKit::SQLiteIDBCursor::currentKey):
(WebKit::SQLiteIDBCursor::currentPrimaryKey):
(WebKit::SQLiteIDBCursor::currentValue):

Add infrastructure for a SQLiteIDBTransaction to keep track of (and clean up) its open cursors:
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.cpp:
(WebKit::SQLiteIDBTransaction::SQLiteIDBTransaction):
(WebKit::SQLiteIDBTransaction::~SQLiteIDBTransaction):
(WebKit::SQLiteIDBTransaction::reset):
(WebKit::SQLiteIDBTransaction::openCursor):
(WebKit::SQLiteIDBTransaction::clearCursors):
* DatabaseProcess/IndexedDB/sqlite/SQLiteIDBTransaction.h:
(WebKit::SQLiteIDBTransaction::create):
(WebKit::SQLiteIDBTransaction::sqliteTransaction):

Add accessors for the two fields:
* DatabaseProcess/IndexedDB/IDBIdentifier.h:
(WebKit::IDBIdentifier::connection):
(WebKit::IDBIdentifier::id):

* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoImplement policy response delegate handling
andersca@apple.com [Thu, 30 Jan 2014 22:06:42 +0000 (22:06 +0000)]
Implement policy response delegate handling
https://bugs.webkit.org/show_bug.cgi?id=127945

Reviewed by Dan Bernstein.

* UIProcess/API/APIPolicyClient.h:
(API::PolicyClient::decidePolicyForResponse):
* UIProcess/API/C/WKPage.cpp:
(WKPageSetPagePolicyClient):
* UIProcess/API/Cocoa/WKNavigationDelegate.h:
(NS_ENUM):
* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
(WebKit::NavigationState::PolicyClient::decidePolicyForResponse):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForResponse):

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

6 years agoDe-virtual-ize CachedResource::isImage()
ddkilzer@apple.com [Thu, 30 Jan 2014 21:49:33 +0000 (21:49 +0000)]
De-virtual-ize CachedResource::isImage()
<http://webkit.org/b/127936>

Reviewed by Andreas Kling.

Also replace explicit type() checks with isImage().

Source/WebCore:

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::willSendRequest): Use isImage().
* loader/cache/CachedImage.h:
(WebCore::CachedResource::isImage): Remove virtual override.
* loader/cache/CachedResource.h:
(WebCore::CachedResource::isImage): Check type() instead of
defining a virtual method that returns false by default.
* loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::reloadImagesIfNotDeferred): Use isImage().

Source/WebKit/mac:

* Misc/WebCache.mm:
(+[WebCache imageForURL:]): Use !isImage().

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

6 years agoMove OTHER_LDFLAGS erasure to DumpRenderTreeLibrary.xcconfig.
dfarler@apple.com [Thu, 30 Jan 2014 21:35:21 +0000 (21:35 +0000)]
Move OTHER_LDFLAGS erasure to DumpRenderTreeLibrary.xcconfig.
https://bugs.webkit.org/show_bug.cgi?id=127935

Reviewed by Andy Estes.

* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/mac/Configurations/DumpRenderTreeLibrary.xcconfig:
Move OTHER_LDFLAGS erasure to the static library's xcconfig.

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

6 years agoAllow the OpenGL Profiler to get through the sandbox
dino@apple.com [Thu, 30 Jan 2014 21:30:29 +0000 (21:30 +0000)]
Allow the OpenGL Profiler to get through the sandbox
https://bugs.webkit.org/show_bug.cgi?id=127877
<rdar://problem/14817250>
<rdar://problem/14271180>

Reviewed by Alexey Proskuryakov.

Open up the sandbox for WebProcess and PluginProcess so
that OpenGL.framework can create a mach port for communication
with the OpenGL Profiler.

* Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
* WebProcess/com.apple.WebProcess.sb.in:

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

6 years agoBegin fleshing out the navigation delegate
andersca@apple.com [Thu, 30 Jan 2014 21:28:13 +0000 (21:28 +0000)]
Begin fleshing out the navigation delegate
https://bugs.webkit.org/show_bug.cgi?id=127939

Reviewed by Dan Bernstein.

* UIProcess/API/APIPolicyClient.h:
(API::PolicyClient::decidePolicyForNavigationAction):
Pass the listener as a RefPtr.

* UIProcess/API/C/WKPage.cpp:
(WKPageSetPagePolicyClient):
Update for API::PolicyClient changes.

* UIProcess/API/Cocoa/WKNavigationDelegate.h:
Add new delegate.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
Set a policy client on the page.

* UIProcess/Cocoa/NavigationState.h:
Add a new PolicyClient class.

* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::NavigationState):
Initialize m_navigationDelegateMethods.

(WebKit::NavigationState::navigationDelegate):
m_delegate was renamed to m_navigationDelegate.

(WebKit::NavigationState::setNavigationDelegate):
Update m_navigationDelegateMethods.webViewDecidePolicyForNavigationActionDecisionHandler.

(WebKit::NavigationState::createPolicyClient):
New helper function for creating a new policy client.

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
Call the navigation delegate method.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
Use std::move to hand off the listener to the client.

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

6 years agoDumpRenderTree fails to build with ASAN: -fsanitize=address passed to static DRT...
dfarler@apple.com [Thu, 30 Jan 2014 21:26:21 +0000 (21:26 +0000)]
DumpRenderTree fails to build with ASAN: -fsanitize=address passed to static DRT target
https://bugs.webkit.org/show_bug.cgi?id=127935

Reviewed by Andy Estes.

* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
Clear OTHER_LDFLAGS at the project level for the static library target.
No other linker flags were inherited from DebugRelease.

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

6 years agopackage-root shouldn't prefix simulator roots with the SDK path
dfarler@apple.com [Thu, 30 Jan 2014 21:11:56 +0000 (21:11 +0000)]
package-root shouldn't prefix simulator roots with the SDK path
http://bugs.webkit.org/show_bug.cgi?id=127923

Reviewed by Dan Bernstein.

* Scripts/package-root: Don't add an install path prefix.

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

6 years agoUpdate FTL StackMaps parser to stackSize change
fpizlo@apple.com [Thu, 30 Jan 2014 21:08:54 +0000 (21:08 +0000)]
Update FTL StackMaps parser to stackSize change
https://bugs.webkit.org/show_bug.cgi?id=127933

Reviewed by Oliver Hunt.

* ftl/FTLStackMaps.cpp:
(JSC::FTL::StackMaps::parse):

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

6 years ago[iOS] don't update media layers on main thread when using AVFoundation
eric.carlson@apple.com [Thu, 30 Jan 2014 21:04:47 +0000 (21:04 +0000)]
[iOS] don't update media layers on main thread when using AVFoundation
https://bugs.webkit.org/show_bug.cgi?id=127931

Reviewed by Simon Fraser.

* platform/graphics/GraphicsLayerClient.h:
(WebCore::GraphicsLayerClient::mediaLayerMustBeUpdatedOnMainThread): Add mediaLayerMustBeUpdatedOnMainThread.

* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::mediaLayerMustBeUpdatedOnMainThread): Ask the client if graphics layers
    should be updated on the main thread.

* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::mediaLayerMustBeUpdatedOnMainThread): New, check settings to see
    if video plug-in proxy is enabled.
* rendering/RenderLayerBacking.h:

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

6 years agoCrash in RemoteLayerBackingStore::encode when m_frontBuffer is nullptr.
commit-queue@webkit.org [Thu, 30 Jan 2014 20:57:32 +0000 (20:57 +0000)]
Crash in RemoteLayerBackingStore::encode when m_frontBuffer is nullptr.
https://bugs.webkit.org/show_bug.cgi?id=127756

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-01-30
Reviewed by Jer Noble.

Don't encode RemoteLayerBackingStore when it has no front buffer.

* Shared/mac/RemoteLayerBackingStore.h:
(WebKit::RemoteLayerBackingStore::hasFrontBuffer):
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):

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

6 years ago[MediaControls][iOS] Fix a couple of UI bugs in the iOS Media Controls
jer.noble@apple.com [Thu, 30 Jan 2014 20:44:42 +0000 (20:44 +0000)]
[MediaControls][iOS] Fix a couple of UI bugs in the iOS Media Controls
https://bugs.webkit.org/show_bug.cgi?id=127929

Reviewed by Eric Carlson.

Two UI bugs in the iOS Media Controls: the text in the controls should use the apple
system font rather than the webkit small control font, and the buttons in the controls
are clipped due to an "off by one" error when calculating the SVG image dimensions.

* Modules/mediacontrols/mediaControlsiOS.css:
(::-webkit-media-controls):
(audio::-webkit-media-controls-play-button):
(audio::-webkit-media-controls-fullscreen-button):
(audio::-webkit-media-controls-time-remaining-display):

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

6 years agoAdd ARM EFL Linux builder bots to Apple buildmaster
rgabor@webkit.org [Thu, 30 Jan 2014 20:43:04 +0000 (20:43 +0000)]
Add ARM EFL Linux builder bots to Apple buildmaster
https://bugs.webkit.org/show_bug.cgi?id=127472

Reviewed by Csaba Osztrogonác.

There is no ARM buildslaves after removing the Qt builders.

* BuildSlaveSupport/build.webkit.org-config/config.json:

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

6 years agoREGRESSION (r163037): WebKit2.PageLoadBasic API test failing on Mountain Lion
aestes@apple.com [Thu, 30 Jan 2014 20:32:50 +0000 (20:32 +0000)]
REGRESSION (r163037): WebKit2.PageLoadBasic API test failing on Mountain Lion
https://bugs.webkit.org/show_bug.cgi?id=127934

Disable the failing test on Mountain Lion.

* TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
(TestWebKitAPI::TEST):

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

6 years agoHost plug-ins in XPC services
mrowe@apple.com [Thu, 30 Jan 2014 20:29:12 +0000 (20:29 +0000)]
Host plug-ins in XPC services
<https://webkit.org/b/127897> / <rdar://problem/13675955>

We disabled use of XPC services for plug-ins back in r143829 as the per-architecture services
were not being built for the appropriate architectures. Fixing that allows us to reenable them.

Reviewed by Anders Carlsson.

* Configurations/PluginService.32.xcconfig: Use VALID_ARCHS to restrict the service
to building for i386-only in production builds. Non-production builds allow building
for all standard architectures to ensure that Xcode will be able to build this target.
The exact architecture used isn't a concern for non-production builds since we'll use
the development version of the service anyway.
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::shouldUseXPC): Remove the workaround that disables use of the XPC services.

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

6 years agoAdd WKNavigationDelegate class
andersca@apple.com [Thu, 30 Jan 2014 20:00:12 +0000 (20:00 +0000)]
Add WKNavigationDelegate class
https://bugs.webkit.org/show_bug.cgi?id=127927

Reviewed by Dan Bernstein.

Source/WebKit2:

* UIProcess/API/Cocoa/WKNavigationDelegate.h: Copied from Source/WebKit2/UIProcess/Cocoa/NavigationState.h.
* UIProcess/API/Cocoa/WKWebView.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView navigationDelegate]):
(-[WKWebView setNavigationDelegate:]):
* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:
(WebKit::NavigationState::navigationDelegate):
(WebKit::NavigationState::setNavigationDelegate):
* WebKit2.xcodeproj/project.pbxproj:

Tools:

* TestWebKitAPI/Tests/WebKit2Cocoa/Navigation.mm:
(TEST):

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

6 years agoRefactor WebVideoFullscreenController separating AVKit from MediaElement.
commit-queue@webkit.org [Thu, 30 Jan 2014 19:50:03 +0000 (19:50 +0000)]
Refactor WebVideoFullscreenController separating AVKit from MediaElement.
https://bugs.webkit.org/show_bug.cgi?id=127762

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-01-30
Reviewed by Jer Noble.

Refactor WebVideoFullscreenControllerAVKit implementation into two abstract interfaces with concrete implementations:
WebVideoFullscreenModel, WebVideoFullscreenInterface, WebVideoFullscreenModelMediaElement, WebVideoFullscreenInterfaceAVKit.

* WebCore.xcodeproj/project.pbxproj:
* platform/ios/WebVideoFullscreenControllerAVKit.h:
* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(-[WebVideoFullscreenController init]):
(-[WebVideoFullscreenController dealloc]):
(-[WebVideoFullscreenController enterFullscreen:]):
(-[WebVideoFullscreenController exitFullscreen]):
* platform/ios/WebVideoFullscreenInterface.h: Copied from Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h.
(WebCore::WebVideoFullscreenInterface::~WebVideoFullscreenInterface):
* platform/ios/WebVideoFullscreenInterfaceAVKit.h: Added.
(WebCore::WebVideoFullscreenInterfaceAVKit::~WebVideoFullscreenInterfaceAVKit):
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm: Added.
(NS_ENUM):
(-[WebAVPlayerController init]):
(-[WebAVPlayerController dealloc]):
(-[WebAVPlayerController forwardingTargetForSelector:]):
(-[WebAVPlayerController playerViewController:shouldDismissWithReason:]):
(-[WebAVPlayerController play:]):
(-[WebAVPlayerController pause:]):
(-[WebAVPlayerController togglePlayback:]):
(-[WebAVPlayerController isPlaying]):
(-[WebAVPlayerController setPlaying:]):
(+[WebAVPlayerController keyPathsForValuesAffectingPlaying]):
(-[WebAVPlayerController seekToTime:]):
(:m_videoFullscreenModel):
(WebVideoFullscreenInterfaceAVKit::setWebVideoFullscreenModel):
(WebVideoFullscreenInterfaceAVKit::setDuration):
(WebVideoFullscreenInterfaceAVKit::setCurrentTime):
(WebVideoFullscreenInterfaceAVKit::setRate):
(WebVideoFullscreenInterfaceAVKit::setVideoDimensions):
(WebVideoFullscreenInterfaceAVKit::setVideoLayer):
(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
(WebVideoFullscreenInterfaceAVKit::exitFullscreen):
* platform/ios/WebVideoFullscreenModel.h: Copied from Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h.
(WebCore::WebVideoFullscreenModel::~WebVideoFullscreenModel):
* platform/ios/WebVideoFullscreenModelMediaElement.h: Copied from Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h.
(WebCore::WebVideoFullscreenModelMediaElement::~WebVideoFullscreenModelMediaElement):
(WebCore::WebVideoFullscreenModelMediaElement::setWebVideoFullscreenInterface):
* platform/ios/WebVideoFullscreenModelMediaElement.mm: Added.
(WebVideoFullscreenModelMediaElement::setMediaElement):
(WebVideoFullscreenModelMediaElement::handleEvent):
(WebVideoFullscreenModelMediaElement::requestExitFullScreen):
(WebVideoFullscreenModelMediaElement::play):
(WebVideoFullscreenModelMediaElement::pause):
(WebVideoFullscreenModelMediaElement::togglePlayState):
(WebVideoFullscreenModelMediaElement::seekToTime):
(WebVideoFullscreenModelMediaElement::didExitFullscreen):

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

6 years agoEnable iOS Tools builds by default
dfarler@apple.com [Thu, 30 Jan 2014 19:37:32 +0000 (19:37 +0000)]
Enable iOS Tools builds by default
https://bugs.webkit.org/show_bug.cgi?id=127919

Reviewed by Andy Estes.

* Makefile:
Build all the tools except MiniBrowser on iOS
* Scripts/build-webkit:
Ditto.
Build WebKitTestRunnerApp target on iOS.

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

6 years agoMake TestWebKitAPI build and run for iOS
dfarler@apple.com [Thu, 30 Jan 2014 19:34:23 +0000 (19:34 +0000)]
Make TestWebKitAPI build and run for iOS
https://bugs.webkit.org/show_bug.cgi?id=127925

Reviewed by Andy Estes.

* TestWebKitAPI/Configurations/Base.xcconfig:
- Don't warn on 64-32 bit conversion on x86_64 and arm64
- Don't build mac/*
* TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
- Link WebKit2 on all platforms

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

6 years ago[MediaControls][iOS] Add a "start load" button.
jer.noble@apple.com [Thu, 30 Jan 2014 19:30:37 +0000 (19:30 +0000)]
[MediaControls][iOS] Add a "start load" button.
https://bugs.webkit.org/show_bug.cgi?id=127861

Reviewed by Eric Carlson.

Add a "start load" button which replaces the controls on platforms
where inline playback is not allowed, or when playback without a
user gesture is not allowed.

Add an accessor to MediaControlsHost to query whether inline playback is allowed.:
* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::mediaPlaybackAllowsInline):
* Modules/mediacontrols/MediaControlsHost.h:
* Modules/mediacontrols/MediaControlsHost.idl:
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::mediaSession):

Update the base controller to allow more functions to be overridden:
* Modules/mediacontrols/mediaControlsApple.js:
(Controller):
(Controller.prototype.shouldHaveAnyUI):
(Controller.prototype.updateBase):
(Controller.prototype.setControlsType):
(Controller.prototype.updateControls):
(Controller.prototype.handleFullscreenChange):

Add the new button, and allow for switching between "start", "inline", and "fullscreen" controls:
* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.addVideoListeners):
(ControllerIOS.prototype.removeVideoListeners):
(ControllerIOS.prototype.createBase):
(ControllerIOS.prototype.shouldHaveStartPlaybackButton):
(ControllerIOS.prototype.shouldHaveControls):
(ControllerIOS.prototype.shouldHaveAnyUI):
(ControllerIOS.prototype.createControls):
(ControllerIOS.prototype.setControlsType):
(ControllerIOS.prototype.addStartPlaybackControls):
(ControllerIOS.prototype.removeStartPlaybackControls):
(ControllerIOS.prototype.updateControls):
(ControllerIOS.prototype.handleStartPlaybackButtonTouchStart):
(ControllerIOS.prototype.handleStartPlaybackButtonTouchEnd):
(ControllerIOS.prototype.handleStartPlaybackButtonTouchCancel):
(ControllerIOS.prototype.handleReadyStateChange):

Add the new art:
* Modules/mediacontrols/mediaControlsiOS.css:
(audio::-webkit-media-controls-start-playback-button):
(audio::-webkit-media-controls-start-playback-button.failed):

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

6 years agoWebKit2 View Gestures (Swipe): Provide a way for clients to provide views to swipe
timothy_horton@apple.com [Thu, 30 Jan 2014 19:29:48 +0000 (19:29 +0000)]
WebKit2 View Gestures (Swipe): Provide a way for clients to provide views to swipe
https://bugs.webkit.org/show_bug.cgi?id=127891
<rdar://problem/15931413>

Reviewed by Anders Carlsson.

* UIProcess/API/Cocoa/WKViewPrivate.h: Add the SPI.

* UIProcess/API/ios/PageClientImplIOS.h:
* UIProcess/API/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::clearCustomSwipeViews):
* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::clearCustomSwipeViews):
* UIProcess/PageClient.h:
Plumb clearCustomSwipeViews() so that WebPageProxy can clear
ViewGestureController's list of custom views when the current
back-forward item changes.

* UIProcess/API/mac/WKView.mm:
(-[WKView _takeViewSnapshot]):
If we have custom swipe views, use the union of their bounds as the snapshot region.

(-[WKView _setCustomSwipeViews:]):
Forward along to ViewGestureController.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::didChangeBackForwardList):
When the current back forward list item changes, clear the custom swipe views.

* UIProcess/mac/ViewGestureController.h:
(WebKit::ViewGestureController::setCustomSwipeViews):
(WebKit::ViewGestureController::customSwipeViews):
* UIProcess/mac/ViewGestureController.mm:
(WebKit::ViewGestureController::windowRelativeBoundsForCustomSwipeViews):
Compute the union of the custom swipe view bounds in the window's coordinate space.

(WebKit::ViewGestureController::beginSwipeGesture):
Store the layers we'll be swiping as the "live" layers in m_currentSwipeLiveLayers.
Don't set a shadow (yet) if we have custom swipe views, because it's not clear where to put it.

(WebKit::ViewGestureController::handleSwipeGesture):
Compute the swipe distance ('width') based on the union of the custom views bounds if needed.
Update the transform of all of the live layers. We use transform instead of position now
so that clients can set the position (having an identity transform is one of the SPI caveats).

(WebKit::ViewGestureController::removeSwipeSnapshot):
Reset the transform on all of the live layers.
Clear the list of live layers.

* WebCore.exp.in:
A surprising export.

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

6 years agohttps://bugs.webkit.org/show_bug.cgi?id=127371
bdakin@apple.com [Thu, 30 Jan 2014 19:25:25 +0000 (19:25 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=127371
Explore new API that could be used to help build infinitely scrolling websites
-and corresponding-
<rdar://problem/15244768>

Reviewed by Sam Weinig.

Source/WebCore:

This patch adds 4 new events called webkitwillrevealbottom, webkitwillrevealtop,
webkitwillrevealleft, and webkitwillrevealright. These events will fire when the
user has scrolled close to corresponding edge of the document. Right now that is
defined to be one viewport away from the corresponding edge.

FrameView::scrollPositionChanged() and
FrameView::scrollPositionChangedViaPlatformWidget() now take two parameters
representing the old scroll position and the new position.
* WebCore.exp.in:

New events.
* dom/Document.h:
* dom/Document.idl:
* dom/Element.h:
* dom/Element.idl:
* dom/EventNames.h:
* html/HTMLAttributeNames.in:
* html/HTMLElement.cpp:
(WebCore::populateEventNameForAttributeLocalNameMap):
* page/DOMWindow.h:
* page/DOMWindow.idl:

Send oldPosition and newPosition to scrollPositionChanged().
* page/FrameView.cpp:
(WebCore::FrameView::setFixedVisibleContentRect):
(WebCore::FrameView::scrollPositionChangedViaPlatformWidget):

After sending scroll events, also call sendWillRevealEdgeEventsIfNeeded() to send
the see if we should send the new will-reveal events.
(WebCore::FrameView::scrollPositionChanged):

Use the old position and the new position to determine if the events should be
sent.
(WebCore::FrameView::sendWillRevealEdgeEventsIfNeeded):

Send new parameters to scrollPositionChanged().
(WebCore::FrameView::scrollTo):
(WebCore::FrameView::wheelEvent):
* page/FrameView.h:

Source/WebKit/mac:

FrameView::scrollPositionChangedViaPlatformWidget() now take two parameters
representing the old scroll position and the new position.
* WebView/WebHTMLView.mm:
(-[WebHTMLView _frameOrBoundsChanged]):

LayoutTests:

* fast/events/will-reveal-edges-body-attributes-expected.txt: Added.
* fast/events/will-reveal-edges-body-attributes.html: Added.
* fast/events/will-reveal-edges-event-listeners-expected.txt: Added.
* fast/events/will-reveal-edges-event-listeners.html: Added.
* fast/events/will-reveal-edges-window-attributes-expected.txt: Added.
* fast/events/will-reveal-edges-window-attributes.html: Added.

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

6 years ago[curl] Improve realm string parsing in WWW-Authenticate headers
commit-queue@webkit.org [Thu, 30 Jan 2014 19:02:26 +0000 (19:02 +0000)]
[curl] Improve realm string parsing in WWW-Authenticate headers
https://bugs.webkit.org/show_bug.cgi?id=127421

Patch by Szabolcs David <davidsz@inf.u-szeged.hu> on 2014-01-30
Reviewed by Brent Fulgham.

The realm string contains quotes at the beginning and end - this is the
opposite of the libsoup implementation. Furthermore, if the header is
concatenated from two or more another headers, it contains more incorrect part.

* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::removeLeadingAndTrailingQuotes):
(WebCore::getProtectionSpace):

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

6 years ago[EFL] Update test expectations for WK1 and WK2 after r162947
commit-queue@webkit.org [Thu, 30 Jan 2014 18:20:53 +0000 (18:20 +0000)]
[EFL] Update test expectations for WK1 and WK2 after r162947
https://bugs.webkit.org/show_bug.cgi?id=127913

Unreviewed EFL gardening.

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2014-01-30

* platform/efl-wk1/TestExpectations:
* platform/efl-wk2/TestExpectations:
* platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt:

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

6 years agoModernize HTTPHeaderMap iteration
andersca@apple.com [Thu, 30 Jan 2014 18:18:48 +0000 (18:18 +0000)]
Modernize HTTPHeaderMap iteration
https://bugs.webkit.org/show_bug.cgi?id=127915

Reviewed by Andreas Kling.

* inspector/InspectorResourceAgent.cpp:
(WebCore::buildObjectForHeaders):
(WebCore::InspectorResourceAgent::willLoadXHR):
(WebCore::InspectorResourceAgent::replayXHR):
* loader/CrossOriginAccessControl.cpp:
(WebCore::isSimpleCrossOriginAccessRequest):
(WebCore::createAccessControlPreflightRequest):
* loader/CrossOriginPreflightResultCache.cpp:
(WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
* loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::responseReceived):
* loader/appcache/ApplicationCacheStorage.cpp:
(WebCore::ApplicationCacheStorage::store):
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::canReuse):
* loader/cache/CachedResource.cpp:
(WebCore::CachedResource::updateResponseAfterRevalidation):
* platform/network/HTTPHeaderMap.cpp:
(WebCore::HTTPHeaderMap::copyData):
* platform/network/ResourceRequestBase.cpp:
(WebCore::ResourceRequestBase::addHTTPHeaderFields):
* platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::setHeaderFields):
* platform/network/mac/ResourceRequestMac.mm:
(WebCore::ResourceRequest::doUpdatePlatformRequest):
* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::getAllResponseHeaders):

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

6 years agoUnreviewed EFL gardening
m.pakula@samsung.com [Thu, 30 Jan 2014 18:06:53 +0000 (18:06 +0000)]
Unreviewed EFL gardening

Add test expectation for tests failing after r160991 and r162605.

* platform/efl-wk2/TestExpectations:

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

6 years agoIDB: Add no-op plumbing for deleteDatabase and deleteRange
beidson@apple.com [Thu, 30 Jan 2014 17:49:42 +0000 (17:49 +0000)]
IDB: Add no-op plumbing for deleteDatabase and deleteRange
https://bugs.webkit.org/show_bug.cgi?id=127912

Reviewed by Alexey Proskuryakov.

Forward the calls to the DatabaseProcess, and handle completion from the DatabaseProcess:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::deleteDatabase):
(WebKit::WebIDBServerConnection::didDeleteDatabase):
(WebKit::WebIDBServerConnection::deleteRange):
(WebKit::WebIDBServerConnection::didDeleteRange):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

Stub out deleteDatabase, and forward deleteRange to the appropriate UniqueIDBDatabase:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::deleteDatabase):
(WebKit::DatabaseProcessIDBConnection::deleteRange):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Forward the request to the backing store thread, and handle the response from that thread:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::deleteRange):
(WebKit::UniqueIDBDatabase::deleteRangeInBackingStore):
(WebKit::UniqueIDBDatabase::didDeleteRangeInBackingStore):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

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

6 years agoWeb Inspector: Implement open/close Console window shortcut
commit-queue@webkit.org [Thu, 30 Jan 2014 17:49:13 +0000 (17:49 +0000)]
Web Inspector: Implement open/close Console window shortcut
https://bugs.webkit.org/show_bug.cgi?id=127896

Patch by Diego Pino Garcia <dpino@igalia.com> on 2014-01-30
Reviewed by Timothy Hatcher.

* UserInterface/KeyboardShortcut.js:
(WebInspector.KeyboardShortcut.prototype.get displayName):
Bug: Option symbol should be displayed as Alternative symbol (\u2387)
in non Mac platforms.
* UserInterface/Main.js:
(WebInspector.contentLoaded):
Create keyboard shortcut for toggling console window.

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

6 years ago[GTK] Only disable -ftree-dce optimization when compiling with GCC
zandobersek@gmail.com [Thu, 30 Jan 2014 17:33:53 +0000 (17:33 +0000)]
[GTK] Only disable -ftree-dce optimization when compiling with GCC
https://bugs.webkit.org/show_bug.cgi?id=127911

Reviewed by Carlos Garcia Campos.

.:

* Source/autotools/SetupAutomake.m4: Define the COMPILER_GCC and COMPILER_CLANG Automake macros.
These can be used when compiler-specific flags have to be used. The latter one is not actually needed
at the moment, but is added for the sake of completeness.

Source/JavaScriptCore:

* GNUmakefile.am: Only disable the -ftree-dce optimization when using the GCC compiler.
Some Clang versions/configurations don't support the flag.

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

6 years agopackage-root should copy ./usr from the build products directory
dfarler@apple.com [Thu, 30 Jan 2014 17:17:06 +0000 (17:17 +0000)]
package-root should copy ./usr from the build products directory
https://bugs.webkit.org/show_bug.cgi?id=127878

Reviewed by Daniel Bates.

* Scripts/package-root:
Copy ./usr in addition to the frameworks.

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

6 years ago[GTK] Disable optimizations for JSC that turned out malignant after jsCStack branch...
zandobersek@gmail.com [Thu, 30 Jan 2014 16:33:35 +0000 (16:33 +0000)]
[GTK] Disable optimizations for JSC that turned out malignant after jsCStack branch merge
https://bugs.webkit.org/show_bug.cgi?id=127909

Reviewed by Carlos Garcia Campos.

* GNUmakefile.am: Disable the -fomit-frame-pointer optimization to achieve proper register usage
in operationCallEval. Disable the -ftree-dce optimization since it is causing additional failures
when using GCC 4.8, possibly due to a bug in the compiler itself.

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

6 years agoWebPage::determinePrimarySnapshottedPlugIn is slow
antti@apple.com [Thu, 30 Jan 2014 15:49:54 +0000 (15:49 +0000)]
WebPage::determinePrimarySnapshottedPlugIn is slow
https://bugs.webkit.org/show_bug.cgi?id=127905

Source/WebCore:

Reviewed by Anders Carlsson.

* WebCore.exp.in: New exports
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLPlugInImageElement.h:
(WebCore::HTMLPlugInImageElement>): Add isElementOfType<>

Source/WebKit2:

Reviewed by Anders Carlsson.

PLT before:
132.0ms  0.8% 0,0   WebKit::WebPage::determinePrimarySnapshottedPlugIn()
130.0ms  0.8% 0,0    WebCore::RenderView::hitTest(WebCore::HitTestRequest const&, WebCore::HitTestResult&)

After:
7.0ms    0.0% 0,0   WebKit::WebPage::determinePrimarySnapshottedPlugIn()
3.0ms    0.0% 0,0    WebCore::RenderView::hitTest(WebCore::HitTestRequest const&, WebCore::HitTestResult&)

* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::determinePrimarySnapshottedPlugIn):

    Instead of shotgunning the page with hit tests, do a DOM crawl for plugins
    and hit test the centers.

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

6 years ago[SOUP] Fix the build if !ENABLE(WEB_TIMING)
ossy@webkit.org [Thu, 30 Jan 2014 14:04:28 +0000 (14:04 +0000)]
[SOUP] Fix the build if !ENABLE(WEB_TIMING)
https://bugs.webkit.org/show_bug.cgi?id=127906

Reviewed by Gustavo Noronha Silva.

* platform/network/soup/SoupNetworkSession.cpp:

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

6 years ago[EFL] Fix the regression caused by the jsCStack branch merge
ossy@webkit.org [Thu, 30 Jan 2014 11:37:47 +0000 (11:37 +0000)]
[EFL] Fix the regression caused by the jsCStack branch merge
https://bugs.webkit.org/show_bug.cgi?id=127898

Reviewed by Zoltan Herczeg.

* Source/cmake/OptionsEfl.cmake: Build with -fno-omit-frame-pointer.

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

6 years agoRemove the ACCELERATED_COMPOSITING flag
abucur@adobe.com [Thu, 30 Jan 2014 10:22:36 +0000 (10:22 +0000)]
Remove the ACCELERATED_COMPOSITING flag
https://bugs.webkit.org/show_bug.cgi?id=127833

Reviewed by Antti Koivisto.

Remove the USE(ACCELERATED_COMPOSITING) conditionals from the code base and make AC
mandatory.

Source/WebCore:

Tests: No new tests, no functional change.

* css/MediaQueryEvaluator.cpp:
(WebCore::transform_3dMediaFeatureEval):
* css/StyleResolver.cpp:
(WebCore::StyleResolver::canShareStyleWithElement):
* dom/Document.cpp:
(WebCore::Document::setVisualUpdatesAllowed):
(WebCore::Document::recalcStyle):
(WebCore::Document::createRenderTree):
(WebCore::Document::documentWillBecomeInactive):
(WebCore::Document::documentDidResumeFromPageCache):
(WebCore::Document::windowScreenDidChange):
* dom/PseudoElement.cpp:
(WebCore::PseudoElement::~PseudoElement):
* history/CachedFrame.cpp:
(WebCore::CachedFrameBase::CachedFrameBase):
(WebCore::CachedFrameBase::restore):
(WebCore::CachedFrame::CachedFrame):
* history/CachedFrame.h:
* history/CachedPage.cpp:
(WebCore::CachedPage::restore):
* history/CachedPage.h:
* history/PageCache.cpp:
(WebCore::PageCache::PageCache):
(WebCore::PageCache::markPagesForDeviceScaleChanged):
* history/PageCache.h:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getContext):
(WebCore::HTMLCanvasElement::reset):
(WebCore::HTMLCanvasElement::paintsIntoCanvasBuffer):
(WebCore::HTMLCanvasElement::createImageBuffer):
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
* html/HTMLMediaElement.h:
* html/canvas/CanvasRenderingContext.h:
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::didDraw):
* html/canvas/CanvasRenderingContext2D.h:
* html/canvas/WebGLRenderingContext.cpp:
(WebCore::WebGLRenderingContext::markContextChanged):
(WebCore::WebGLRenderingContext::reshape):
(WebCore::WebGLRenderingContext::platformLayer):
* html/canvas/WebGLRenderingContext.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::pseudoElementDestroyedImpl):
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::pseudoElementDestroyed):
* inspector/InspectorLayerTreeAgent.cpp:
* inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::reset):
* inspector/InstrumentingAgents.h:
* loader/EmptyClients.h:
* page/ChromeClient.h:
* page/Frame.cpp:
(WebCore::Frame::layerTreeAsText):
(WebCore::Frame::deviceOrPageScaleFactorChanged):
* page/Frame.h:
* page/FrameView.cpp:
(WebCore::FrameView::setFrameRect):
(WebCore::FrameView::scheduleLayerFlushAllowingThrottling):
(WebCore::FrameView::hasCompositedContent):
(WebCore::FrameView::hasCompositedContentIncludingDescendants):
(WebCore::FrameView::hasCompositingAncestor):
(WebCore::FrameView::enterCompositingMode):
(WebCore::FrameView::isEnclosedInCompositingLayer):
(WebCore::FrameView::flushCompositingStateIncludingSubframes):
(WebCore::FrameView::isSoftwareRenderable):
(WebCore::FrameView::layout):
(WebCore::FrameView::contentsInCompositedLayer):
(WebCore::FrameView::scrollContentsFastPath):
(WebCore::FrameView::scrollContentsSlowPath):
(WebCore::FrameView::setIsOverlapped):
(WebCore::FrameView::delegatesScrollingDidChange):
(WebCore::FrameView::scrollPositionChanged):
(WebCore::FrameView::updateCompositingLayersAfterScrolling):
(WebCore::FrameView::visibleContentsResized):
(WebCore::FrameView::addedOrRemovedScrollbar):
(WebCore::FrameView::disableLayerFlushThrottlingTemporarilyForInteraction):
(WebCore::FrameView::updateLayerFlushThrottlingInAllFrames):
(WebCore::FrameView::adjustTiledBackingCoverage):
(WebCore::FrameView::hasExtendedBackground):
(WebCore::FrameView::extendedBackgroundRect):
(WebCore::FrameView::setBackgroundExtendsBeyondPage):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::paintContents):
(WebCore::FrameView::setTracksRepaints):
(WebCore::FrameView::resetTrackedRepaints):
(WebCore::FrameView::setScrollingPerformanceLoggingEnabled):
(WebCore::FrameView::setExposedRect):
* page/FrameView.h:
* page/Page.cpp:
(WebCore::Page::setPageScaleFactor):
(WebCore::Page::setDeviceScaleFactor):
* page/Settings.cpp:
(WebCore::Settings::setBackgroundShouldExtendBeyondPage):
* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::freezeAtTime):
* page/animation/AnimationController.cpp:
(WebCore::AnimationController::supportsAcceleratedAnimationOfProperty):
* page/animation/CSSPropertyAnimation.cpp:
(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
(WebCore::CSSPropertyAnimation::blendProperties):
(WebCore::CSSPropertyAnimation::animationOfPropertyIsAccelerated):
* page/animation/CSSPropertyAnimation.h:
* page/animation/CompositeAnimation.cpp:
(WebCore::CompositeAnimation::updateTransitions):
* page/animation/ImplicitAnimation.cpp:
(WebCore::ImplicitAnimation::animate):
(WebCore::ImplicitAnimation::startAnimation):
(WebCore::ImplicitAnimation::pauseAnimation):
(WebCore::ImplicitAnimation::endAnimation):
(WebCore::ImplicitAnimation::timeToNextService):
* page/animation/KeyframeAnimation.cpp:
(WebCore::KeyframeAnimation::animate):
(WebCore::KeyframeAnimation::startAnimation):
(WebCore::KeyframeAnimation::pauseAnimation):
(WebCore::KeyframeAnimation::endAnimation):
(WebCore::KeyframeAnimation::timeToNextService):
* page/ios/FrameIOS.mm:
(WebCore::Frame::viewportOffsetChanged):
(WebCore::Frame::containsTiledBackingLayers):
* page/scrolling/AsyncScrollingCoordinator.cpp:
(WebCore::AsyncScrollingCoordinator::updateScrollPositionAfterAsyncScroll):
* page/scrolling/ScrollingCoordinator.cpp:
(WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView):
(WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):
(WebCore::ScrollingCoordinator::verticalScrollbarLayerForScrollableArea):
(WebCore::ScrollingCoordinator::scrollLayerForFrameView):
(WebCore::ScrollingCoordinator::headerLayerForFrameView):
(WebCore::ScrollingCoordinator::footerLayerForFrameView):
(WebCore::ScrollingCoordinator::counterScrollingLayerForFrameView):
(WebCore::ScrollingCoordinator::hasVisibleSlowRepaintViewportConstrainedObjects):
* page/scrolling/ScrollingCoordinator.h:
* platform/ScrollView.cpp:
(WebCore::positionScrollCornerLayer):
(WebCore::ScrollView::positionScrollbarLayers):
(WebCore::ScrollView::paintScrollbars):
(WebCore::ScrollView::paint):
* platform/ScrollableArea.cpp:
(WebCore::ScrollableArea::invalidateScrollbar):
(WebCore::ScrollableArea::invalidateScrollCorner):
(WebCore::ScrollableArea::horizontalScrollbarLayerDidChange):
(WebCore::ScrollableArea::hasLayerForHorizontalScrollbar):
(WebCore::ScrollableArea::hasLayerForVerticalScrollbar):
(WebCore::ScrollableArea::hasLayerForScrollCorner):
* platform/ScrollableArea.h:
* platform/ScrollbarTheme.h:
* platform/efl/EflScreenUtilities.cpp:
(WebCore::applyFallbackCursor):
* platform/graphics/GraphicsContext3D.h:
* platform/graphics/GraphicsContext3DPrivate.cpp:
(WebCore::GraphicsContext3DPrivate::~GraphicsContext3DPrivate):
(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
* platform/graphics/GraphicsContext3DPrivate.h:
* platform/graphics/GraphicsLayer.cpp:
* platform/graphics/GraphicsLayer.h:
* platform/graphics/GraphicsLayerAnimation.cpp:
* platform/graphics/GraphicsLayerAnimation.h:
* platform/graphics/GraphicsLayerClient.h:
* platform/graphics/GraphicsLayerFactory.h:
* platform/graphics/GraphicsLayerUpdater.cpp:
* platform/graphics/GraphicsLayerUpdater.h:
* platform/graphics/ImageBuffer.cpp:
* platform/graphics/ImageBuffer.h:
* platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::platformLayer):
(WebCore::MediaPlayer::supportsAcceleratedRendering):
* platform/graphics/MediaPlayer.h:
* platform/graphics/MediaPlayerPrivate.h:
* platform/graphics/PlatformLayer.h:
* platform/graphics/TextTrackRepresentation.cpp:
* platform/graphics/TextTrackRepresentation.h:
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::currentRenderingMode):
(WebCore::MediaPlayerPrivateAVFoundation::preferredRenderingMode):
(WebCore::MediaPlayerPrivateAVFoundation::setUpVideoRendering):
(WebCore::MediaPlayerPrivateAVFoundation::tearDownVideoRendering):
* platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
* platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformLayer):
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::acceleratedRenderingStateChanged):
* platform/graphics/ca/GraphicsLayerCA.cpp:
* platform/graphics/ca/GraphicsLayerCA.h:
* platform/graphics/ca/LayerFlushScheduler.cpp:
* platform/graphics/ca/LayerFlushScheduler.h:
* platform/graphics/ca/LayerFlushSchedulerClient.h:
* platform/graphics/ca/PlatformCAAnimation.h:
* platform/graphics/ca/PlatformCAFilters.h:
* platform/graphics/ca/PlatformCALayer.h:
* platform/graphics/ca/PlatformCALayerClient.h:
* platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
* platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
(PlatformCAAnimation::copyTimingFunctionsFrom):
* platform/graphics/ca/mac/PlatformCAFiltersMac.mm:
* platform/graphics/ca/mac/PlatformCALayerMac.h:
* platform/graphics/ca/mac/PlatformCALayerMac.mm:
(PlatformCALayerMac::enumerateRectsBeingDrawn):
* platform/graphics/ca/win/AbstractCACFLayerTreeHost.h:
* platform/graphics/ca/win/CACFLayerTreeHost.cpp:
* platform/graphics/ca/win/CACFLayerTreeHost.h:
* platform/graphics/ca/win/CACFLayerTreeHostClient.h:
* platform/graphics/ca/win/LayerChangesFlusher.cpp:
* platform/graphics/ca/win/LayerChangesFlusher.h:
* platform/graphics/ca/win/LegacyCACFLayerTreeHost.cpp:
* platform/graphics/ca/win/LegacyCACFLayerTreeHost.h:
* platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
(PlatformCAAnimation::copyTimingFunctionsFrom):
* platform/graphics/ca/win/PlatformCAFiltersWin.cpp:
* platform/graphics/ca/win/PlatformCALayerWin.cpp:
(PlatformCALayerWin::createCompatibleLayer):
* platform/graphics/ca/win/PlatformCALayerWin.h:
* platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
(PlatformCALayerWinInternal::drawTile):
* platform/graphics/ca/win/PlatformCALayerWinInternal.h:
* platform/graphics/ca/win/WKCACFViewLayerTreeHost.cpp:
* platform/graphics/ca/win/WKCACFViewLayerTreeHost.h:
* platform/graphics/cairo/DrawingBufferCairo.cpp:
(WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
* platform/graphics/cairo/GraphicsContext3DCairo.cpp:
(WebCore::GraphicsContext3D::platformLayer):
* platform/graphics/cairo/ImageBufferCairo.cpp:
(WebCore::ImageBuffer::platformLayer):
* platform/graphics/efl/GraphicsContext3DEfl.cpp:
(WebCore::GraphicsContext3D::platformLayer):
* platform/graphics/efl/GraphicsContext3DPrivate.cpp:
* platform/graphics/efl/GraphicsContext3DPrivate.h:
* platform/graphics/gpu/DrawingBuffer.h:
* platform/graphics/gpu/LoopBlinnMathUtils.cpp:
* platform/graphics/gpu/TilingData.cpp:
* platform/graphics/gpu/mac/DrawingBufferMac.mm:
(WebCore::DrawingBuffer::frontColorBuffer):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamerBase::paint):
* platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
* platform/graphics/ios/MediaPlayerPrivateIOS.h:
* platform/graphics/ios/MediaPlayerPrivateIOS.mm:
(WebCore::MediaPlayerPrivateIOS::supportsAcceleratedRendering):
* platform/graphics/mac/MediaPlayerPrivateQTKit.h:
* platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
(WebCore::MediaPlayerPrivateQTKit::destroyQTMovieLayer):
(WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
(WebCore::MediaPlayerPrivateQTKit::platformLayer):
(WebCore::MediaPlayerPrivateQTKit::setClosedCaptionsVisible):
(WebCore::MediaPlayerPrivateQTKit::layerHostChanged):
(WebCore::MediaPlayerPrivateQTKit::acceleratedRenderingStateChanged):
(-[WebCoreMovieObserver layerHostChanged:]):
* platform/graphics/mac/WebGLLayer.h:
* platform/graphics/mac/WebGLLayer.mm:
* platform/graphics/mac/WebLayer.h:
* platform/graphics/mac/WebLayer.mm:
* platform/graphics/mac/WebTiledLayer.h:
* platform/graphics/mac/WebTiledLayer.mm:
* platform/graphics/opengl/GLDefs.h:
* platform/graphics/opengl/GLPlatformContext.cpp:
* platform/graphics/opengl/GLPlatformContext.h:
* platform/graphics/opengl/GLPlatformSurface.cpp:
* platform/graphics/opengl/GLPlatformSurface.h:
* platform/graphics/surfaces/GLTransportSurface.cpp:
* platform/graphics/surfaces/GLTransportSurface.h:
* platform/graphics/surfaces/glx/GLXConfigSelector.h:
* platform/graphics/surfaces/glx/GLXContext.cpp:
* platform/graphics/surfaces/glx/GLXContext.h:
* platform/graphics/surfaces/glx/GLXSurface.cpp:
* platform/graphics/surfaces/glx/GLXSurface.h:
* platform/graphics/texmap/TextureMapper.cpp:
* platform/graphics/texmap/TextureMapper.h:
* platform/graphics/texmap/TextureMapperBackingStore.cpp:
* platform/graphics/texmap/TextureMapperBackingStore.h:
* platform/graphics/texmap/TextureMapperFPSCounter.cpp:
* platform/graphics/texmap/TextureMapperFPSCounter.h:
* platform/graphics/texmap/TextureMapperGL.cpp:
* platform/graphics/texmap/TextureMapperGL.h:
* platform/graphics/texmap/TextureMapperLayer.cpp:
* platform/graphics/texmap/TextureMapperLayer.h:
* platform/graphics/texmap/TextureMapperShaderProgram.cpp:
* platform/graphics/texmap/TextureMapperSurfaceBackingStore.cpp:
* platform/graphics/texmap/TextureMapperSurfaceBackingStore.h:
* platform/graphics/texmap/TextureMapperTile.cpp:
* platform/graphics/texmap/TextureMapperTile.h:
* platform/graphics/texmap/TextureMapperTiledBackingStore.cpp:
* platform/graphics/texmap/TextureMapperTiledBackingStore.h:
* platform/graphics/win/GraphicsContext3DWin.cpp:
(WebCore::GraphicsContext3D::platformLayer):
* platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
(WebCore::MediaPlayerPrivateFullscreenWindow::createWindow):
(WebCore::MediaPlayerPrivateFullscreenWindow::wndProc):
* platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerLayoutSublayersOfLayer):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::MediaPlayerPrivateQuickTimeVisualContext):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformMedia):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::platformLayer):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::naturalSize):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::paint):
(WebCore::CreateCGImageFromPixelBuffer):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveCurrentImage):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::currentRenderingMode):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::preferredRenderingMode):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpVideoRendering):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::tearDownVideoRendering):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::hasSetUpVideoRendering):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::retrieveAndResetMovieTransform):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::createLayerForMovie):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::destroyLayerForMovie):
(WebCore::MediaPlayerPrivateQuickTimeVisualContext::setPrivateBrowsingMode):
* platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
* platform/graphics/win/WKCAImageQueue.cpp:
* platform/graphics/win/WKCAImageQueue.h:
* platform/mac/ScrollbarThemeMac.h:
* platform/mac/ScrollbarThemeMac.mm:
* plugins/PluginViewBase.h:
* rendering/FlowThreadController.cpp:
(WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded):
* rendering/FlowThreadController.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleWillChange):
(WebCore::isCandidateForOpaquenessTest):
(WebCore::layersUseImage):
(WebCore::RenderBox::imageChanged):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::suspendAnimations):
(WebCore::RenderBoxModelObject::fixedBackgroundPaintsInLocalCoordinates):
* rendering/RenderBoxModelObject.h:
* rendering/RenderElement.cpp:
(WebCore::RenderElement::adjustStyleDifference):
(WebCore::RenderElement::setStyle):
(WebCore::RenderElement::styleWillChange):
* rendering/RenderEmbeddedObject.cpp:
(WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing):
* rendering/RenderEmbeddedObject.h:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::RenderFlowThread):
(WebCore::RenderFlowThread::layout):
(WebCore::RenderFlowThread::updateAllLayerToRegionMappings):
* rendering/RenderFlowThread.h:
* rendering/RenderFullScreen.cpp:
* rendering/RenderImage.cpp:
(WebCore::RenderImage::imageDimensionsChanged):
(WebCore::RenderImage::notifyFinished):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::~RenderLayer):
(WebCore::RenderLayer::canRender3DTransforms):
(WebCore::RenderLayer::paintsWithFilters):
(WebCore::RenderLayer::updateLayerPositions):
(WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrderRecursive):
(WebCore::RenderLayer::currentTransform):
(WebCore::RenderLayer::updateDescendantDependentFlags):
(WebCore::RenderLayer::checkIfDescendantClippingContextNeedsUpdate):
(WebCore::RenderLayer::shouldRepaintAfterLayout):
(WebCore::RenderLayer::enclosingFilterRepaintLayer):
(WebCore::RenderLayer::setFilterBackendNeedsRepaintingInRect):
(WebCore::RenderLayer::clippingRootForPainting):
(WebCore::RenderLayer::addChild):
(WebCore::RenderLayer::removeChild):
(WebCore::RenderLayer::removeOnlyThisLayer):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::updateCompositingLayersAfterScroll):
(WebCore::RenderLayer::invalidateScrollbarRect):
(WebCore::RenderLayer::invalidateScrollCornerRect):
(WebCore::RenderLayer::positionOverflowControls):
(WebCore::RenderLayer::updateScrollInfoAfterLayout):
(WebCore::RenderLayer::paintOverflowControls):
(WebCore::shouldDoSoftwarePaint):
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::calculateClipRects):
* rendering/RenderLayer.h:
* rendering/RenderLayerBacking.cpp:
* rendering/RenderLayerBacking.h:
* rendering/RenderLayerCompositor.cpp:
* rendering/RenderLayerCompositor.h:
* rendering/RenderNamedFlowThread.cpp:
(WebCore::RenderNamedFlowThread::collectsGraphicsLayersUnderRegions):
* rendering/RenderNamedFlowThread.h:
* rendering/RenderObject.cpp:
(WebCore::RenderObject::containerForRepaint):
(WebCore::RenderObject::repaintUsingContainer):
* rendering/RenderTreeAsText.cpp:
(WebCore::write):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::updatePlayer):
(WebCore::RenderVideo::acceleratedRenderingStateChanged):
* rendering/RenderVideo.h:
* rendering/RenderView.cpp:
(WebCore::RenderView::paintBoxDecorations):
(WebCore::RenderView::repaintRootContents):
(WebCore::RenderView::repaintRectangleInViewAndCompositedLayers):
(WebCore::RenderView::repaintViewAndCompositedLayers):
(WebCore::RenderView::setMaximalOutlineSize):
(WebCore::RenderView::compositor):
(WebCore::RenderView::setIsInWindow):
* rendering/RenderView.h:
* rendering/RenderWidget.cpp:
(WebCore::RenderWidget::setWidgetGeometry):
(WebCore::RenderWidget::requiresAcceleratedCompositing):
* rendering/RenderWidget.h:
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::changeRequiresLayout):
(WebCore::RenderStyle::changeRequiresLayerRepaint):
(WebCore::RenderStyle::changeRequiresRecompositeLayer):
(WebCore::RenderStyle::diff):
* rendering/style/RenderStyle.h:
* rendering/style/RenderStyleConstants.h:
* rendering/style/StyleRareNonInheritedData.cpp:
(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):
* rendering/style/StyleRareNonInheritedData.h:
* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::setHeaderHeight):
(WebCore::Internals::setFooterHeight):

Source/WebKit/efl:

Another patch will be required to remove the flag support from the EFL build system.

* WebCoreSupport/AcceleratedCompositingContextEfl.cpp:
* WebCoreSupport/AcceleratedCompositingContextEfl.h:
* WebCoreSupport/ChromeClientEfl.cpp:
(WebCore::ChromeClientEfl::allowedCompositingTriggers):
* WebCoreSupport/ChromeClientEfl.h:
* WebCoreSupport/PageClientEfl.cpp:
(PageClientEfl::acceleratedCompositingContext):
* WebCoreSupport/PageClientEfl.h:
* ewk/ewk_private.h:
* ewk/ewk_view.cpp:
(_ewk_view_priv_new):
(_ewk_view_priv_del):
(ewk_view_mark_for_sync):
* ewk/ewk_view_private.h:

Source/WebKit/gtk:

Another patch will be required to remove the flag support from the GTK build system.

* WebCoreSupport/AcceleratedCompositingContext.h:
* WebCoreSupport/AcceleratedCompositingContextGL.cpp:
* WebCoreSupport/ChromeClientGtk.cpp:
(WebKit::ChromeClient::widgetSizeChanged):
(WebKit::ChromeClient::forcePaint):
(WebKit::ChromeClient::invalidateContentsAndRootView):
(WebKit::ChromeClient::invalidateContentsForSlowScroll):
(WebKit::ChromeClient::scroll):
(WebKit::ChromeClient::allowedCompositingTriggers):
* WebCoreSupport/ChromeClientGtk.h:
* webkit/webkitwebview.cpp:
(webkit_web_view_update_settings):
(webkit_web_view_settings_notify):
(webkit_web_view_init):
* webkit/webkitwebviewprivate.h:

Source/WebKit/ios:

* WebCoreSupport/WebChromeClientIOS.h:
* WebCoreSupport/WebChromeClientIOS.mm:
(WebChromeClientIOS::attachRootGraphicsLayer):
* WebView/WebUIKitDelegate.h:

Source/WebKit/mac:

* Plugins/Hosted/WebHostedNetscapePluginView.mm:
(-[WebHostedNetscapePluginView createPlugin]):
(-[WebHostedNetscapePluginView createPluginLayer]):
* Plugins/WebNetscapePluginView.mm:
(-[WebNetscapePluginView createPlugin]):
(-[WebNetscapePluginView getVariable:value:]):
* Plugins/WebPluginController.mm:
(-[WebPluginController superlayerForPluginView:]):
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::allowedCompositingTriggers):
* WebCoreSupport/WebChromeClient.mm:
* WebCoreSupport/WebFrameLoaderClient.mm:
(PluginWidgetIOS::detachPluginLayer):
(NetscapePluginWidget::platformLayer):
* WebView/WebClipView.mm:
(-[WebClipView _immediateScrollToPoint:]):
* WebView/WebHTMLView.mm:
(setNeedsDisplayInRect):
(+[WebHTMLViewPrivate initialize]):
(-[WebHTMLViewPrivate clear]):
(-[WebHTMLView _setAsideSubviews]):
(-[WebHTMLView hitTest:]):
(-[WebHTMLView _isUsingAcceleratedCompositing]):
(-[WebHTMLView _compositingLayersHostingView]):
(-[WebHTMLView viewDidMoveToSuperview]):
(-[WebHTMLView drawRect:]):
* WebView/WebHTMLViewInternal.h:
* WebView/WebRenderLayer.mm:
(+[WebRenderLayer compositingInfoForLayer:]):
* WebView/WebView.mm:
(-[WebView _close]):
(-[WebView _setMediaLayer:forPluginView:]):
(-[WebView _postsAcceleratedCompositingNotifications]):
(-[WebView _setPostsAcceleratedCompositingNotifications:]):
(-[WebView _isUsingAcceleratedCompositing]):
(-[WebView _isSoftwareRenderable]):
(-[WebView close]):
* WebView/WebViewData.h:
* WebView/WebViewData.mm:
(WebViewLayerFlushScheduler::WebViewLayerFlushScheduler):
* WebView/WebViewInternal.h:

Source/WebKit/win:

Another patch will be required to remove the flag support from the Win build system.

* FullscreenVideoController.cpp:
(FullscreenVideoController::LayerClient::platformCALayerLayoutSublayersOfLayer):
(FullscreenVideoController::FullscreenVideoController):
(FullscreenVideoController::~FullscreenVideoController):
(FullscreenVideoController::enterFullscreen):
* FullscreenVideoController.h:
* WebCoreSupport/WebChromeClient.cpp:
(WebChromeClient::scheduleCompositingLayerFlush):
* WebCoreSupport/WebChromeClient.h:
(WebChromeClient::setNeedsOneShotDrawingSynchronization):
* WebPreferences.cpp:
(WebPreferences::acceleratedCompositingEnabled):
* WebView.cpp:
(WebView::WebView):
(WebView::~WebView):
(WebView::close):
(WebView::repaint):
(WebView::addToDirtyRegion):
(WebView::scrollBackingStore):
(WebView::sizeChanged):
(WebView::updateBackingStore):
(WebView::paint):
(WebView::setShouldInvertColors):
(WebView::WebViewWndProc):
(WebView::notifyPreferencesChanged):
(WebView::setAcceleratedCompositing):
* WebView.h:

Source/WebKit/wince:

Another patch will be required to remove the flag support from the WinCE build system.

* WebCoreSupport/ChromeClientWinCE.cpp:
(WebKit::ChromeClientWinCE::scheduleCompositingLayerFlush):
* WebCoreSupport/ChromeClientWinCE.h:

Source/WebKit2:

* PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::PluginControllerProxy):
* PluginProcess/PluginCreationParameters.cpp:
(WebKit::PluginCreationParameters::PluginCreationParameters):
(WebKit::PluginCreationParameters::encode):
(WebKit::PluginCreationParameters::decode):
* PluginProcess/PluginCreationParameters.h:
* PluginProcess/PluginProcess.h:
* Shared/WebRenderLayer.cpp:
(WebKit::WebRenderLayer::WebRenderLayer):
* Shared/mac/RemoteLayerBackingStore.h:
* Shared/mac/RemoteLayerBackingStore.mm:
(RemoteLayerBackingStore::enumerateRectsBeingDrawn):
* UIProcess/API/efl/EvasGLContext.cpp:
* UIProcess/API/efl/EvasGLContext.h:
* UIProcess/API/efl/EvasGLSurface.cpp:
* UIProcess/API/efl/EvasGLSurface.h:
* UIProcess/API/efl/EwkView.cpp:
(EwkView::EwkView):
(EwkView::displayTimerFired):
(EwkView::createGLSurface):
(EwkView::handleEvasObjectCalculate):
(EwkView::handleEvasObjectShow):
(EwkView::takeSnapshot):
* UIProcess/API/efl/EwkView.h:
* UIProcess/API/efl/SnapshotImageGL.cpp:
(getImageSurfaceFromFrameBuffer):
* UIProcess/API/efl/SnapshotImageGL.h:
* UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
(EWK2UnitTest::EWK2UnitTestBase::SetUp):
* UIProcess/API/gtk/PageClientImpl.cpp:
(WebKit::PageClientImpl::updateAcceleratedCompositingMode):
* UIProcess/API/gtk/PageClientImpl.h:
* UIProcess/API/ios/PageClientImplIOS.h:
* UIProcess/API/ios/PageClientImplIOS.mm:
(WebKit::PageClientImpl::acceleratedCompositingRootLayer):
* UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
(WebKit::CoordinatedDrawingAreaProxy::~CoordinatedDrawingAreaProxy):
(WebKit::CoordinatedDrawingAreaProxy::visibilityDidChange):
(WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState):
(WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingAreaProxy::updateAcceleratedCompositingMode):
(WebKit::CoordinatedDrawingAreaProxy::sendUpdateBackingStoreState):
(WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
* UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
* UIProcess/CoordinatedGraphics/PageViewportController.cpp:
* UIProcess/CoordinatedGraphics/PageViewportController.h:
* UIProcess/CoordinatedGraphics/WebView.cpp:
(WebKit::WebView::setVisible):
* UIProcess/DrawingAreaProxy.h:
* UIProcess/DrawingAreaProxy.messages.in:
* UIProcess/DrawingAreaProxyImpl.cpp:
(WebKit::DrawingAreaProxyImpl::~DrawingAreaProxyImpl):
(WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
(WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::updateAcceleratedCompositingMode):
(WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
(WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
* UIProcess/DrawingAreaProxyImpl.h:
* UIProcess/PageClient.h:
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformInitializePluginProcess):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::updateAcceleratedCompositingMode):
* UIProcess/WebPageProxy.h:
* UIProcess/efl/PageLoadClientEfl.cpp:
(WebKit::PageLoadClientEfl::didCommitLoadForFrame):
* UIProcess/efl/PageViewportControllerClientEfl.cpp:
* UIProcess/efl/ViewClientEfl.cpp:
(WebKit::ViewClientEfl::didChangeContentsSize):
(WebKit::ViewClientEfl::didChangeContentsPosition):
(WebKit::ViewClientEfl::didRenderFrame):
(WebKit::ViewClientEfl::didCompletePageTransition):
(WebKit::ViewClientEfl::didChangeViewportAttributes):
* UIProcess/mac/WebContextMac.mm:
(WebKit::WebContext::platformInitializeWebProcess):
* WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::screenRectOfContents):
* WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::isAcceleratedCompositingEnabled):
* WebProcess/Plugins/PluginController.h:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::initialize):
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::layerTreeStateIsFrozen):
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
(WebKit::CoordinatedDrawingArea::layerHostDidFlushLayers):
(WebKit::CoordinatedDrawingArea::scheduleCompositingLayerFlush):
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
* WebProcess/WebPage/DrawingArea.h:
* WebProcess/WebPage/DrawingAreaImpl.cpp:
(WebKit::DrawingAreaImpl::layerHostDidFlushLayers):
(WebKit::DrawingAreaImpl::scheduleCompositingLayerFlush):
(WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
* WebProcess/WebPage/DrawingAreaImpl.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::exitAcceleratedCompositingMode):
(WebKit::WebPage::mainFrameDidLayout):
(WebKit::WebPage::didReceiveMessage):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
* WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
* WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
(PlatformCALayerRemote::hostingContextID):
* WebProcess/WebPage/mac/PlatformCALayerRemote.h:
* WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
* WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
(PlatformCALayerRemoteCustom::hostingContextID):
* WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.cpp:
(PlatformCALayerRemoteTiledBacking::setBorderColor):
* WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess):
* WebProcess/WebProcess.h:

Source/WTF:

* wtf/OwnPtrCommon.h:
* wtf/Platform.h:
* wtf/efl/OwnPtrEfl.cpp:
(WTF::deleteOwnedPtr):

Tools:

* DumpRenderTree/efl/DumpRenderTree.cpp:
(initEcoreEvas):
* EWebLauncher/main.c:
(windowCreate):
* MiniBrowser/efl/main.c:
(elm_main):
* TestWebKitAPI/efl/PlatformWebView.cpp:
(TestWebKitAPI::initEcoreEvas):
* WebKitTestRunner/cairo/TestInvocationCairo.cpp:
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
* WebKitTestRunner/efl/PlatformWebViewEfl.cpp:
(WTR::initEcoreEvas):

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

6 years agoAX: Clean up AccessibilityRenderObject
k.czech@samsung.com [Thu, 30 Jan 2014 09:07:13 +0000 (09:07 +0000)]
AX: Clean up AccessibilityRenderObject
https://bugs.webkit.org/show_bug.cgi?id=127838

Reviewed by Chris Fleizach.

Reducing some code by implementing ariaElementsFromAttribute.
It is used as a helper for other methods.

No new tests. Covered by existing ones.

* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::ariaElementsFromAttribute):
(WebCore::AccessibilityRenderObject::ariaFlowToElements):
(WebCore::AccessibilityRenderObject::ariaDescribedByElements):
(WebCore::AccessibilityRenderObject::ariaOwnsElements):
* accessibility/AccessibilityRenderObject.h:

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

6 years agoUnreviewed, rolling out r163052.
commit-queue@webkit.org [Thu, 30 Jan 2014 08:32:44 +0000 (08:32 +0000)]
Unreviewed, rolling out r163052.
http://trac.webkit.org/changeset/163052
https://bugs.webkit.org/show_bug.cgi?id=127895

It was the buildfix after the rolled out r163048 (Requested by
Ossy on #webkit).

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

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

6 years agoIDB: Key generator support
beidson@apple.com [Thu, 30 Jan 2014 08:19:40 +0000 (08:19 +0000)]
IDB: Key generator support
https://bugs.webkit.org/show_bug.cgi?id=127871

Reviewed by Tim Horton.

* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::putRecordInBackingStore): Update for storing/retrieving integers instead of IDBKeys.
* DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:

* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): Create a keygen table.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore): Put a record in the keygen table for
  this object store if necessary.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteObjectStore): Delete the entry in the keygen table.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::generateKeyNumber): Pull the current number from the table.
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::updateKeyGeneratorNumber): Update the number in the table.
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:

* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::put): Null keys are acceptable for autoIncrement object stores.

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

6 years agoIDB: Implement IDBObjectStore.count()
beidson@apple.com [Thu, 30 Jan 2014 08:16:56 +0000 (08:16 +0000)]
IDB: Implement IDBObjectStore.count()
https://bugs.webkit.org/show_bug.cgi?id=127888

Reviewed by Tim Horton.

Forward request to the DatabaseProcess, and handle its completion:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
(WebKit::WebIDBServerConnection::count):
(WebKit::WebIDBServerConnection::didCount):
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
* WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:

Pass request along to the appropriate UniqueIDBDatabase:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
(WebKit::DatabaseProcessIDBConnection::count):
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
* DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:

Pass request to backing store thread, then pass it back to the WebProcess:
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::count):
(WebKit::UniqueIDBDatabase::countInBackingStore):
(WebKit::UniqueIDBDatabase::didCountInBackingStore):
* DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:

* Shared/AsyncTask.h:
(WebKit::createAsyncTask):

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

6 years agoUnreviewed. Fix the GTK+ build after r163037.
carlosgc@webkit.org [Thu, 30 Jan 2014 08:03:24 +0000 (08:03 +0000)]
Unreviewed. Fix the GTK+ build after r163037.

* UIProcess/API/gtk/WebKitWebView.cpp:
(webkit_web_view_load_uri):
(webkit_web_view_load_request):

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

6 years agoUnreviewed, rolling out r163048.
commit-queue@webkit.org [Thu, 30 Jan 2014 07:42:07 +0000 (07:42 +0000)]
Unreviewed, rolling out r163048.
http://trac.webkit.org/changeset/163048
https://bugs.webkit.org/show_bug.cgi?id=127890

Caused many crashes, detected by EWS prior to landing
(Requested by ap on #webkit).

* Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::sortedTrackListForMenu):
(WebCore::MediaControlsHost::displayNameForTrack):
(WebCore::MediaControlsHost::captionDisplayMode):
* WebCore.exp.in:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
* css/DocumentRuleSets.cpp:
(WebCore::DocumentRuleSets::initUserStyle):
* css/InspectorCSSOMWrappers.cpp:
(WebCore::InspectorCSSOMWrappers::collectFromDocumentStyleSheetCollection):
* dom/Document.cpp:
(WebCore::Document::setCompatibilityMode):
(WebCore::Document::registerForCaptionPreferencesChangedCallbacks):
(WebCore::Document::captionPreferencesChanged):
* dom/DocumentStyleSheetCollection.cpp:
* dom/DocumentStyleSheetCollection.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::parseAttribute):
* html/shadow/MediaControlElements.cpp:
(WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay):
(WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
(WebCore::MediaControlTextTrackContainerElement::updateTimerFired):
* page/CaptionStyleSheetMediaAF.cpp: Removed.
* page/CaptionStyleSheetMediaAF.h: Removed.
* page/CaptionUserPreferences.cpp:
(WebCore::CaptionUserPreferences::CaptionUserPreferences):
(WebCore::CaptionUserPreferences::notify):
(WebCore::CaptionUserPreferences::setCaptionDisplayMode):
(WebCore::CaptionUserPreferences::userPrefersCaptions):
(WebCore::CaptionUserPreferences::setUserPrefersCaptions):
(WebCore::CaptionUserPreferences::userPrefersSubtitles):
(WebCore::CaptionUserPreferences::setUserPrefersSubtitles):
(WebCore::CaptionUserPreferences::userPrefersTextDescriptions):
(WebCore::CaptionUserPreferences::setUserPrefersTextDescriptions):
(WebCore::CaptionUserPreferences::captionPreferencesChanged):
(WebCore::CaptionUserPreferences::textTrackSelectionScore):
(WebCore::CaptionUserPreferences::setCaptionsStyleSheetOverride):
(WebCore::CaptionUserPreferences::updateCaptionStyleSheetOveride):
* page/CaptionUserPreferences.h:
(WebCore::CaptionUserPreferences::captionsStyleSheetOverride):
(WebCore::CaptionUserPreferences::setInterestedInCaptionPreferenceChanges):
(WebCore::CaptionUserPreferences::testingMode):
(WebCore::CaptionUserPreferences::setTestingMode):
(WebCore::CaptionUserPreferences::pageGroup):
* page/CaptionUserPreferencesMediaAF.cpp:
(WebCore::userCaptionPreferencesChangedNotificationCallback):
(WebCore::CaptionUserPreferencesMediaAF::CaptionUserPreferencesMediaAF):
(WebCore::CaptionUserPreferencesMediaAF::userPrefersCaptions):
(WebCore::CaptionUserPreferencesMediaAF::userPrefersSubtitles):
(WebCore::CaptionUserPreferencesMediaAF::setInterestedInCaptionPreferenceChanges):
(WebCore::CaptionUserPreferencesMediaAF::captionPreferencesChanged):
(WebCore::CaptionUserPreferencesMediaAF::captionsWindowCSS):
(WebCore::CaptionUserPreferencesMediaAF::captionsBackgroundCSS):
(WebCore::CaptionUserPreferencesMediaAF::captionsTextColor):
(WebCore::CaptionUserPreferencesMediaAF::captionsTextColorCSS):
(WebCore::CaptionUserPreferencesMediaAF::windowRoundedCornerRadiusCSS):
(WebCore::CaptionUserPreferencesMediaAF::captionsEdgeColorForTextColor):
(WebCore::CaptionUserPreferencesMediaAF::cssPropertyWithTextEdgeColor):
(WebCore::CaptionUserPreferencesMediaAF::colorPropertyCSS):
(WebCore::CaptionUserPreferencesMediaAF::captionsTextEdgeCSS):
(WebCore::CaptionUserPreferencesMediaAF::captionsDefaultFontCSS):
(WebCore::CaptionUserPreferencesMediaAF::captionsStyleSheetOverride):
(WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore):
(WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu):
* page/CaptionUserPreferencesMediaAF.h:
* page/Page.cpp:
* page/Page.h:
* page/PageGroup.cpp:
(WebCore::PageGroup::captionPreferencesChanged):
(WebCore::PageGroup::captionPreferences):
* page/PageGroup.h:
* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setShouldDisplayTrackKind):
(WebCore::InternalSettings::shouldDisplayTrackKind):
* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::Internals):
(WebCore::Internals::captionsStyleSheetOverride):
(WebCore::Internals::setCaptionsStyleSheetOverride):
(WebCore::Internals::setPrimaryAudioTrackLanguageOverride):
(WebCore::Internals::setCaptionDisplayMode):

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

6 years agoRemove ENABLE(JAVASCRIPT_DEBUGGER) leftovers
ossy@webkit.org [Thu, 30 Jan 2014 07:41:21 +0000 (07:41 +0000)]
Remove ENABLE(JAVASCRIPT_DEBUGGER) leftovers
https://bugs.webkit.org/show_bug.cgi?id=127845

Reviewed by Joseph Pecoraro.

.:

* Source/autotools/SetupWebKitFeatures.m4:

Source/JavaScriptCore:

* Configurations/FeatureDefines.xcconfig:

Source/WebCore:

* Configurations/FeatureDefines.xcconfig:
* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::supportsProfiling):

Source/WebKit/mac:

* Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

* Configurations/FeatureDefines.xcconfig:

Tools:

* Scripts/webkitperl/FeatureList.pm:

WebKitLibraries:

* win/tools/vsprops/FeatureDefines.props:
* win/tools/vsprops/FeatureDefinesCairo.props:

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

6 years agoWeb Inspector: Play Breakpoint Sound in Frontend
joepeck@webkit.org [Thu, 30 Jan 2014 07:36:51 +0000 (07:36 +0000)]
Web Inspector: Play Breakpoint Sound in Frontend
https://bugs.webkit.org/show_bug.cgi?id=127885

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

* inspector/ScriptDebugListener.h:
* inspector/ScriptDebugServer.cpp:
(Inspector::ScriptDebugServer::evaluateBreakpointAction):
(Inspector::ScriptDebugServer::dispatchBreakpointActionSound):
* inspector/ScriptDebugServer.h:
Pass the breakpoint action identifier through when the
sound breakpoint action is triggered.

* inspector/protocol/Debugger.json:
New "playBreakpointActionSound" event when a "sound" breakpoint action triggers.

* inspector/agents/InspectorDebuggerAgent.h:
* inspector/agents/InspectorDebuggerAgent.cpp:
(Inspector::InspectorDebuggerAgent::breakpointActionSound):
Send the new event so the frontend can handle it.

Source/WebInspectorUI:

Beep in the frontend when a "sound" breakpoint action is triggered.

* UserInterface/DebuggerManager.js:
(WebInspector.DebuggerManager.prototype.playBreakpointActionSound):
* UserInterface/DebuggerObserver.js:
(WebInspector.DebuggerObserver.prototype.resumed):
(WebInspector.DebuggerObserver.prototype.playBreakpointActionSound):
* UserInterface/InspectorJSBackendCommands.js:

LayoutTests:

Extend the breakpoint actions test for the "playBreakpointActionSound" event.

* inspector-protocol/debugger/setBreakpoint-actions-expected.txt:
* inspector-protocol/debugger/setBreakpoint-actions.html:

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

6 years agoMerge final changesets from the jsCStack branch (r162969, r162975, r162992, r163004...
fpizlo@apple.com [Thu, 30 Jan 2014 07:30:24 +0000 (07:30 +0000)]
Merge final changesets from the jsCStack branch (r162969, r162975, r162992, r163004, r163069).

    2014-01-29  Filip Pizlo  <fpizlo@apple.com>

    DFG ArrayPop double array mishandles the NaN hole installation
    https://bugs.webkit.org/show_bug.cgi?id=127813

    Reviewed by Mark Rowe.

    Our object model for arrays inferred double dictates that we use quiet NaN (QNaN) to
    mark holes. Holes, in this context, are any entries in the allocated array buffer
    (i.e. from index 0 up to the vectorLength) that don't currently hold a value. Popping
    creates a hole, since it deletes the value at publicLength - 1.

    But, because of some sloppy copy-and-paste, we were storing (int64_t)0 when creating
    the hole, instead of storing QNaN. That's likely because for other kinds of arrays,
    64-bit zero is the hole marker, instead of QNaN.

    The attached test case illustrates the problem. In the LLInt and Baseline JIT, the
    result returned from foo() is "1.5,2.5,,4.5", since array.pop() removes 3.5 and
    replaces it with a hole and then the assignment "array[3] = 4.5" creates an element
    just beyond that hole. But, once we tier-up to the DFG, the result previously became
    "1.5,2.5,0,4.5", which is wrong. The 0 appeared because the IEEE double
    interpretation of 64-bit zero is simply zero.

    This patch fixes that problem. Now the DFG agrees with the other engines.

    This patch also fixes style. For some reason that copy-pasted code wasn't even
    indented correctly.

    * dfg/DFGSpeculativeJIT64.cpp:
    (JSC::DFG::SpeculativeJIT::compile):
    * tests/stress/array-pop-double-hole.js: Added.
    (foo):

    2014-01-28  Filip Pizlo  <fpizlo@apple.com>

    FTL should support ArrayPush
    https://bugs.webkit.org/show_bug.cgi?id=127748

    Not reviewed, remove some debug code.

    * ftl/FTLLowerDFGToLLVM.cpp:
    (JSC::FTL::LowerDFGToLLVM::compileArrayPush):

    2014-01-27  Filip Pizlo  <fpizlo@apple.com>

    FTL should support ArrayPush
    https://bugs.webkit.org/show_bug.cgi?id=127748

    Reviewed by Oliver Hunt.

    * ftl/FTLAbstractHeapRepository.h:
    (JSC::FTL::AbstractHeapRepository::forArrayType):
    * ftl/FTLCapabilities.cpp:
    (JSC::FTL::canCompile):
    * ftl/FTLIntrinsicRepository.h:
    * ftl/FTLLowerDFGToLLVM.cpp:
    (JSC::FTL::LowerDFGToLLVM::compileNode):
    (JSC::FTL::LowerDFGToLLVM::compileArrayPush):
    * tests/stress/array-push-contiguous.js: Added.
    (foo):
    * tests/stress/array-push-double.js: Added.
    (foo):

    2014-01-28  Filip Pizlo  <fpizlo@apple.com>

    FTL should support ArrayPop
    https://bugs.webkit.org/show_bug.cgi?id=127749

    Reviewed by Geoffrey Garen.

    * ftl/FTLCapabilities.cpp:
    (JSC::FTL::canCompile):
    * ftl/FTLIntrinsicRepository.h:
    * ftl/FTLLowerDFGToLLVM.cpp:
    (JSC::FTL::LowerDFGToLLVM::compileNode):
    (JSC::FTL::LowerDFGToLLVM::compileArrayPush):
    (JSC::FTL::LowerDFGToLLVM::compileArrayPop):
    * tests/stress/array-pop-contiguous.js: Added.
    (foo):
    * tests/stress/array-pop-double.js: Added.
    (foo):
    * tests/stress/array-pop-int32.js: Added.
    (foo):

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

6 years agoDFG::ByteCodeParser::m_dfgCodeBlock is sometimes uninitialized
fpizlo@apple.com [Thu, 30 Jan 2014 05:44:51 +0000 (05:44 +0000)]
DFG::ByteCodeParser::m_dfgCodeBlock is sometimes uninitialized
<rdar://problem/15939032>

Reviewed by Dan Bernstein.

* dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parse):

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

6 years agoMoved linking against common frameworks and a library from the .xcconfig file into...
mitz@apple.com [Thu, 30 Jan 2014 05:25:58 +0000 (05:25 +0000)]
Moved linking against common frameworks and a library from the .xcconfig file into the target.

Reviewed by Tim Horton.

* Configurations/WebKit2.xcconfig:
* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoFix 32-bit build.
andersca@apple.com [Thu, 30 Jan 2014 03:20:34 +0000 (03:20 +0000)]
Fix 32-bit build.

* UIProcess/Cocoa/NavigationState.h:
* UIProcess/Cocoa/NavigationState.mm:

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

6 years agoMoved linking against common frameworks and a library from the .xcconfig file into...
mitz@apple.com [Thu, 30 Jan 2014 02:50:28 +0000 (02:50 +0000)]
Moved linking against common frameworks and a library from the .xcconfig file into the target.

Reviewed by Tim Horton.

../WebKit:

* WebKit.xcodeproj/project.pbxproj:

../WebKit/mac:

* Configurations/WebKit.xcconfig:

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

6 years agoAdd a NavigationState object to keep track of the navigations for a given page
andersca@apple.com [Thu, 30 Jan 2014 02:49:27 +0000 (02:49 +0000)]
Add a NavigationState object to keep track of the navigations for a given page
https://bugs.webkit.org/show_bug.cgi?id=127884

Reviewed by Sam Weinig.

* UIProcess/API/Cocoa/WKNavigation.mm:
(-[WKNavigation request]):
(-[WKNavigation setRequest:]):
* UIProcess/API/Cocoa/WKNavigationInternal.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
(-[WKWebView loadRequest:]):
* UIProcess/Cocoa/NavigationState.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigation.mm.
* UIProcess/Cocoa/NavigationState.mm: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigation.mm.
(WebKit::NavigationState::NavigationState):
(WebKit::NavigationState::~NavigationState):
(WebKit::NavigationState::createLoadRequestNavigation):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadRequest):
* UIProcess/WebPageProxy.h:
* WebKit2.xcodeproj/project.pbxproj:

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

6 years agoAdd IsVisibleOrOccluded to ViewState
barraclough@apple.com [Thu, 30 Jan 2014 02:10:00 +0000 (02:10 +0000)]
Add IsVisibleOrOccluded to ViewState
https://bugs.webkit.org/show_bug.cgi?id=127875

Reviewed by Anders Carlsson.

../WebCore:

* page/ViewState.h:
    - added IsVisibleOrOccluded

../WebKit2:

When the WKView associated with a plugin becomes occluded
we tell the plugin it is no longer visible. This is a problem
if the plugin is being occluded by its own fullscreen window.

Instead, consider plugins to be visible any time they are in
a visible window – i.e. when they are visible or occluded.

* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::isViewVisibleOrOccluded):
* UIProcess/PageClient.h:
(WebKit::PageClient::isViewVisibleOrOccluded):
    - added isViewVisibleOrOccluded.
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::updateViewState):
    - update IsVisibleOrOccluded.
(WebKit::WebPageProxy::viewStateDidChange):
    - when updating IsVisible also update IsVisibleOrOccluded.
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::platformViewStateDidChange):
    - use isVisibleOrOccluded to determine plugin visibility.
* WebProcess/WebPage/WebPage.h:
(WebKit::WebPage::isVisibleOrOccluded):
    - accessor.

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

6 years agoPass navigation IDs along to LoadRequest and Reload
andersca@apple.com [Thu, 30 Jan 2014 02:07:03 +0000 (02:07 +0000)]
Pass navigation IDs along to LoadRequest and Reload
https://bugs.webkit.org/show_bug.cgi?id=127883

Reviewed by Sam Weinig.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::loadRequest):
(WebKit::WebPageProxy::loadFile):
(WebKit::WebPageProxy::reload):
(WebKit::WebPageProxy::generateNavigationID):
* UIProcess/WebPageProxy.h:
* WebProcess/WebPage/WebDocumentLoader.cpp:
(WebKit::WebDocumentLoader::setNavigationID):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::WebPage):
(WebKit::WebPage::loadRequest):
(WebKit::WebPage::reload):
(WebKit::WebPage::createDocumentLoader):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

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

6 years agocheckTextOfParagraph releases NSString twice
rniwa@webkit.org [Thu, 30 Jan 2014 02:05:48 +0000 (02:05 +0000)]
checkTextOfParagraph releases NSString twice
https://bugs.webkit.org/show_bug.cgi?id=127881
<rdar://problem/15937446>

Reviewed by Anders Carlsson.

textString is released once by an explicit call to release and again by it going out of scope.
Don't do the explicit release.

The bug was spotted by Sam Weinig.

* WebCoreSupport/WebEditorClient.mm:
(WebEditorClient::checkTextOfParagraph):

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

6 years agojs/function-apply-aliased.html is timing out
mhahnenberg@apple.com [Thu, 30 Jan 2014 02:03:16 +0000 (02:03 +0000)]
js/function-apply-aliased.html is timing out
https://bugs.webkit.org/show_bug.cgi?id=127860

Reviewed by Michael Saboff.

* TestExpectations:

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

6 years ago50% time on Dromaeo Selector * benchmark spent allocating oversized backing stores...
ggaren@apple.com [Thu, 30 Jan 2014 02:02:29 +0000 (02:02 +0000)]
50% time on Dromaeo Selector * benchmark spent allocating oversized backing stores (but not in Chrome)
https://bugs.webkit.org/show_bug.cgi?id=127879

Reviewed by Gavin Barraclough.

Let's not dynamically resize an array whose size is statically known,
mmmkay?

* runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncConcat): Use nullptr to disambiguate vs the numeric
argument.

(JSC::arrayProtoFuncSlice): The fix.

(JSC::arrayProtoFuncSort):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncFilter):
(JSC::arrayProtoFuncMap): Use nullptr.

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

6 years agoEventHandler::handleMouseReleaseEvent shouldn't call updateSelectionCachesIfSelection...
rniwa@webkit.org [Thu, 30 Jan 2014 01:53:42 +0000 (01:53 +0000)]
EventHandler::handleMouseReleaseEvent shouldn't call updateSelectionCachesIfSelectionIsInsideTextFormControl
and selectFrameElementInParentIfFullySelected
https://bugs.webkit.org/show_bug.cgi?id=127834

Reviewed by Alexey Proskuryakov.

Removed the calls and made setNonDirectionalSelectionIfNeeded pass in UserTriggered option.

In addition, removed the rather error-prone function override of setSelection since TextGranularity,
which is an enum, could be implicitly coerced into SetSelectionOptions which is a typedefed unsigned int.

* editing/FrameSelection.cpp:
(WebCore::FrameSelection::setSelectionByMouseIfDifferent): Renamed from setNonDirectionalSelectionIfNeeded.
Pass in DoNotRevealSelection to avoid revealing the selection to preserve the existing behavior.
There are two layout tests that fail without this.
(WebCore::FrameSelection::setSelection): Check the newly addeed DoNotRevealSelection option.
(WebCore::FrameSelection::wordSelectionContainingCaretSelection): Call

* editing/FrameSelection.h: Made updateSelectionCachesIfSelectionIsInsideTextFormControl and
selectFrameElementInParentIfFullySelected private as they are no longer called outside of FrameSelection.

* page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDownDispatchingSelectStart):
(WebCore::EventHandler::updateSelectionForMouseDrag):
(WebCore::EventHandler::handleMouseReleaseEvent): Removed calls to the functions.

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

6 years agoUnreviewed iOS build fix after 163050.
jer.noble@apple.com [Thu, 30 Jan 2014 01:41:33 +0000 (01:41 +0000)]
Unreviewed iOS build fix after 163050.

Import CALayer.h explicitly as (on iOS) it is not included by other headers.

* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

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

6 years agoWeb Inspector: Run JSC Inspector EventLoop in a custom run loop mode to prevent defau...
commit-queue@webkit.org [Thu, 30 Jan 2014 01:32:47 +0000 (01:32 +0000)]
Web Inspector: Run JSC Inspector EventLoop in a custom run loop mode to prevent default observers from running
https://bugs.webkit.org/show_bug.cgi?id=127865

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-29
Reviewed by Geoffrey Garen.

When hitting a breakpoint in a JSContext Inspector we want to entirely
pause the process and all access to the JSContext and only move forward
based on debugger commands. Having the nested run loop run in a default
mode allowed NSTimers scheduled on the thread to regularly run and
evaluate code in the JSContext. Using a custom run loop mode gets us
a bit closer to locking down the context. This doesn't handle scenarios
where background threads also access the JSContext, but it handles the
most common scenario.

* inspector/EventLoop.cpp:
(Inspector::EventLoop::cycle):

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

6 years ago-[WKWebView loadRequest:] should return a WKNavigation
andersca@apple.com [Thu, 30 Jan 2014 01:17:57 +0000 (01:17 +0000)]
-[WKWebView loadRequest:] should return a WKNavigation
https://bugs.webkit.org/show_bug.cgi?id=127873

Reviewed by Dan Bernstein.

Source/WebKit2:

For now this just returns a dummy navigation.

* UIProcess/API/Cocoa/WKNavigation.h:
* UIProcess/API/Cocoa/WKNavigation.mm:
(-[WKNavigation initWithRequest:]):
(-[WKNavigation request]):
* UIProcess/API/Cocoa/WKNavigationInternal.h: Added.
* UIProcess/API/Cocoa/WKWebView.h:
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView loadRequest:]):
* WebKit2.xcodeproj/project.pbxproj:

Tools:

* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit2Cocoa/Navigation.mm: Added.
(TEST):

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

6 years agoFix windows.
weinig@apple.com [Thu, 30 Jan 2014 01:14:01 +0000 (01:14 +0000)]
Fix windows.

* WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

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

6 years agoWeb Inspector: Deadlock hitting breakpoint while inspecting JSContext
commit-queue@webkit.org [Thu, 30 Jan 2014 01:01:13 +0000 (01:01 +0000)]
Web Inspector: Deadlock hitting breakpoint while inspecting JSContext
https://bugs.webkit.org/show_bug.cgi?id=127864

Patch by Joseph Pecoraro <pecoraro@apple.com> on 2014-01-29
Reviewed by Geoffrey Garen.

Temporarily drop the lock while we run the nested runloop.

* inspector/JSGlobalObjectScriptDebugServer.cpp:
(Inspector::JSGlobalObjectScriptDebugServer::runEventLoopWhilePaused):

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

6 years agoUnreviewed Mac Build fix after r163046.
jer.noble@apple.com [Thu, 30 Jan 2014 00:53:15 +0000 (00:53 +0000)]
Unreviewed Mac Build fix after r163046.

Forward define AVSampleLayerDisplayLayer and its methods.

* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

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

6 years ago* UIProcess/API/C/WKPage.cpp:
andersca@apple.com [Thu, 30 Jan 2014 00:39:12 +0000 (00:39 +0000)]
* UIProcess/API/C/WKPage.cpp:
(WKPageLoadURL):
Don't use the resource request constructor that takes a String.

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

6 years agoCaptionUserPreferences should not be on the PageGroup if they are not really per...
weinig@apple.com [Thu, 30 Jan 2014 00:35:31 +0000 (00:35 +0000)]
CaptionUserPreferences should not be on the PageGroup if they are not really per-PageGroup (Part 1)
https://bugs.webkit.org/show_bug.cgi?id=127666

Reviewed by Eric Carlson.

This patch:
- Makes CaptionUserPreferences a singleton (temporary) that is accessed
  via Page.
- Simplifies overriding system preferences by requiring that a Document be
  be passed so the correct Settings object can be obtained (and not just a
  random one).
- Stops using UserStyleSheets for captions style injection, and instead
  adds a new style sheet to the DocumentStyleSheetCollection.
- Move caption style sheet creation into its own file - CaptionStyleSheetMediaAF.h/cpp

* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.vcxproj/WebCore.vcxproj.filters:
* WebCore.xcodeproj/project.pbxproj:
Add new files.

* WebCore.exp.in:
Update exports.

* css/DocumentRuleSets.cpp:
* css/InspectorCSSOMWrappers.cpp:
* dom/Document.cpp:
* dom/DocumentStyleSheetCollection.cpp:
* dom/DocumentStyleSheetCollection.h:
Switch from using the user style sheet mechanism, which is meant for, you guessed it, users,
to an explicit caption style sheet.

* Modules/mediacontrols/MediaControlsHost.cpp:
* html/HTMLMediaElement.cpp:
* html/shadow/MediaControlElements.cpp:
Get the CaptionUserPreferences via the Page.

* page/CaptionStyleSheetMediaAF.cpp: Added.
* page/CaptionStyleSheetMediaAF.h: Added.
Move caption style sheet creation here. If the global style changes, the sheet is invalidated
and this is called again.

* page/CaptionUserPreferences.cpp:
* page/CaptionUserPreferences.h:
- Removes unused m_havePreferences member.
- Change userPrefersFoo() functions to take a Document&. Use it to check its Settings.
- Remove setUserPrefersFoo() functions and just set the Settings directly.
- Move all the testing only pieces together.

* page/CaptionUserPreferencesMediaAF.cpp:
* page/CaptionUserPreferencesMediaAF.h:
- Extract caption style sheet creation into CaptionStyleSheetMediaAF.h/cpp
- Stop waiting for an interested party, and just register for appearance change
  notifications right away. Media elements are common enough that this should not
  make a difference.

* page/Page.cpp:
(WebCore::Page::updateStyleForAllPagesForCaptionPreferencesChanged):
Add helper to call captionPreferencesChanged() on all the Pages.

(WebCore::Page::captionPreferences):
Add accessor for the CaptionUserPreferences. Currently this returns a singleton, but I plan
to extract the singleton aspects of it into another class, and leave the per-Page parts here.

* page/Page.h:
* page/PageGroup.cpp:
* page/PageGroup.h:
Remove CaptionUserPreferences from here.

* testing/InternalSettings.cpp:
(WebCore::InternalSettings::setShouldDisplayTrackKind):
(WebCore::InternalSettings::shouldDisplayTrackKind):
Override the settings for the page directly.

* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
(WebCore::Internals::Internals):
(WebCore::Internals::captionsStyleSheetOverride):
(WebCore::Internals::setCaptionsStyleSheetOverride):
(WebCore::Internals::setPrimaryAudioTrackLanguageOverride):
(WebCore::Internals::setCaptionDisplayMode):
Get the CaptionUserPreferences via the Page.

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

6 years agoUpdate clip-path tests to use new shape syntax
bjonesbe@adobe.com [Thu, 30 Jan 2014 00:31:05 +0000 (00:31 +0000)]
Update clip-path tests to use new shape syntax
https://bugs.webkit.org/show_bug.cgi?id=127862

Reviewed by Dirk Schulze.

Update the tests to reflect the new shape syntax. The inset tests are
copied from the rectangle tests that will be removed when the old
syntax is removed.

* css3/masking/clip-path-inset-expected.txt: Added.
* css3/masking/clip-path-inset.html: Added.
* svg/clip-path/clip-path-shape-circle-1.svg:
* svg/clip-path/clip-path-shape-circle-2.svg:
* svg/clip-path/clip-path-shape-ellipse-1.svg:
* svg/clip-path/clip-path-shape-ellipse-2.svg:
* svg/clip-path/clip-path-shape-rounded-inset-1-expected.svg: Added.
* svg/clip-path/clip-path-shape-rounded-inset-1.svg: Copied from LayoutTests/svg/clip-path/clip-path-shape-circle-1.svg.
* svg/clip-path/clip-path-shape-rounded-inset-2-expected.svg: Added.
* svg/clip-path/clip-path-shape-rounded-inset-2.svg: Copied from LayoutTests/svg/clip-path/clip-path-shape-circle-1.svg.

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

6 years ago[MSE][Mac] In SourceBufferPrivateAVFObjC, only include those headers actually necessa...
jer.noble@apple.com [Thu, 30 Jan 2014 00:02:08 +0000 (00:02 +0000)]
[MSE][Mac] In SourceBufferPrivateAVFObjC, only include those headers actually necessary to compile.
https://bugs.webkit.org/show_bug.cgi?id=127846

Reviewed by Darin Adler.

To work around a compile issue, only include those paths containing classes and typedefs
which are used within SourceBufferPrivateAVFObjC, rather than all of AVFoundation.

* platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:

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

6 years agoIDB: Fully implement IDBKeyData encoding/decoding
beidson@apple.com [Thu, 30 Jan 2014 00:00:25 +0000 (00:00 +0000)]
IDB: Fully implement IDBKeyData encoding/decoding
https://bugs.webkit.org/show_bug.cgi?id=127863

Rubberstamped by Alexey Proskuryakov.

Source/WebCore:

* platform/KeyedCoding.h:

* Modules/indexeddb/IDBKeyData.cpp:
(WebCore::IDBKeyData::encode):
(WebCore::IDBKeyData::decode):

* WebCore.exp.in:

Source/WebKit2:

Handle invalid buffers, and pass IDBKeyData decoding along:
* DatabaseProcess/IndexedDB/IDBSerialization.cpp:
(WebKit::deserializeIDBKeyPath):
(WebKit::serializeIDBKeyData):
(WebKit::deserializeIDBKeyData):
* DatabaseProcess/IndexedDB/IDBSerialization.h:

Implement decodeBool and decodeDouble:
* Shared/cf/KeyedDecoder.cpp:
(WebKit::KeyedDecoder::decodeBool):
(WebKit::KeyedDecoder::decodeDouble):
* Shared/cf/KeyedDecoder.h:

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

6 years agoclip-path swaps bottom radii for the inset shape
bjonesbe@adobe.com [Wed, 29 Jan 2014 23:30:18 +0000 (23:30 +0000)]
clip-path swaps bottom radii for the inset shape
https://bugs.webkit.org/show_bug.cgi?id=127859

Reviewed by Dirk Schulze.

Source/WebCore:

The bottom right and bottom left radii were passed in the wrong order,
causing the wrong corner to be clipped in the resultant rendering.

Test: css3/masking/clip-path-inset-corners.html

* rendering/style/BasicShapes.cpp:
(WebCore::BasicShapeInset::path): Change the parameter order to be
correct.

LayoutTests:

Test that all the inset radii are applied to the correct corners.

* css3/masking/clip-path-inset-corners-expected.html: Added.
* css3/masking/clip-path-inset-corners.html: Added.

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

6 years agoWebKit2 View Gestures (Swipe): Update rubberBandsAt{Left,Right} when WebKit swipe...
timothy_horton@apple.com [Wed, 29 Jan 2014 23:06:45 +0000 (23:06 +0000)]
WebKit2 View Gestures (Swipe): Update rubberBandsAt{Left,Right} when WebKit swipe is enabled
https://bugs.webkit.org/show_bug.cgi?id=127855
<rdar://problem/15933878>

Reviewed by Anders Carlsson.

* UIProcess/API/mac/WKView.mm:
(-[WKView setAllowsBackForwardNavigationGestures:]):
Enable implicit control of rubberbanding when using WebKit2's swipe implementation.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::sendWheelEvent):
* UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::setShouldUseImplicitRubberBandControl):
(WebKit::WebPageProxy::shouldUseImplicitRubberBandControl):
Rename away from "legacy" name, since we're using it on purpose now.

* UIProcess/mac/WebPageProxyMac.mm:
(WebKit::expectsLegacyImplicitRubberBandControl):
(WebKit::WebPageProxy::platformInitialize):
Since NSVersionOfLinkTimeLibrary doesn't work for applications that
don't link directly against the library (like Safari), let's explicitly
check if Safari is expecting the legacy behavior, otherwise using
the linked version of WebKit2, but using the new behavior if we can't
determine the linked version of WebKit2 and are not Safari.

* MiniBrowser/mac/WK2BrowserWindowController.m:
(-[WK2BrowserWindowController awakeFromNib]):
Enable swipe in MiniBrowser for testing purposes.

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

6 years agoMake WKWebView limp along on OS X
andersca@apple.com [Wed, 29 Jan 2014 22:46:59 +0000 (22:46 +0000)]
Make WKWebView limp along on OS X
https://bugs.webkit.org/show_bug.cgi?id=127857

Reviewed by Tim Horton.

On Mac, create a WKView and add it as a subview of the WKWebVew so we'll actually get something
on screen when creating a WKWebView.

* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView initWithFrame:configuration:]):
Create a WKView.

(-[WKWebView resizeSubviewsWithOldSize:]):
Resize the WKView.

* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:configuration:]):
Add new initializer.

* UIProcess/API/mac/WKViewInternal.h:
Use a class extension for internal methods and add the new initializer.

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

6 years ago[MediaControls][iOS] Hook up the fullscreen button
jer.noble@apple.com [Wed, 29 Jan 2014 22:14:53 +0000 (22:14 +0000)]
[MediaControls][iOS] Hook up the fullscreen button
https://bugs.webkit.org/show_bug.cgi?id=127850

Reviewed by Eric Carlson.

For the fullscreen button, do the same thing we do for the play button: handle touchstart,
touchend, and touchcancel, and perform the action (i.e., 'click') on touchend.

* Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.createControls): Add listeners for the fullscreenButton.
(ControllerIOS.prototype.isFullScreen): Override.
(ControllerIOS.prototype.handleFullscreenButtonClicked): Override.
(ControllerIOS.prototype.handleFullscreenTouchStart): Added.
(ControllerIOS.prototype.handleFullscreenTouchEnd): Added.
(ControllerIOS.prototype.handleFullscreenTouchCancel): Added.

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

6 years agoFix JSONP requests made by the WebKit Bot Watcher's Dashboard following <http://trac...
dbates@webkit.org [Wed, 29 Jan 2014 21:21:33 +0000 (21:21 +0000)]
Fix JSONP requests made by the WebKit Bot Watcher's Dashboard following <trac.webkit.org/changeset/163034>
(https://bugs.webkit.org/show_bug.cgi?id=127784)

Use dot-notation instead of array index notation to access the dictionary value for key jsonpCallbackName
in the specified options dictionary.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
(JSON.load):

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

6 years agoFix build.
andersca@apple.com [Wed, 29 Jan 2014 21:17:28 +0000 (21:17 +0000)]
Fix build.

* WebView/WebPDFView.mm:
(_applicationInfoForMIMEType):

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

6 years agoIDB: Opening an existing database is broken
beidson@apple.com [Wed, 29 Jan 2014 21:15:48 +0000 (21:15 +0000)]
IDB: Opening an existing database is broken
https://bugs.webkit.org/show_bug.cgi?id=127851

Reviewed by Tim Hatcher.

Source/WebCore:

* Modules/indexeddb/IDBDatabaseBackend.cpp:
(WebCore::IDBDatabaseBackend::IDBDatabaseBackend):
(WebCore::IDBDatabaseBackend::didOpenInternalAsync): Remember if this method has completed.
(WebCore::IDBDatabaseBackend::processPendingCalls): If didOpenInternalAsync hasn’t
  been called yet, then it is incorrect to process any pending calls right now.
* Modules/indexeddb/IDBDatabaseBackend.h:

Source/WebKit2:

* DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
(WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata): Save the request to get metadata
  to the set before posting the task to the thread.
* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata): Actually save the retrieved
  object store metadata to the database metadata.

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

6 years agoConsolidate page loading functions
andersca@apple.com [Wed, 29 Jan 2014 20:54:09 +0000 (20:54 +0000)]
Consolidate page loading functions
https://bugs.webkit.org/show_bug.cgi?id=127847

Reviewed by Tim Horton.

Get rid of the loadURL functions (and the LoadURL message), rename
loadURLRequest to loadRequest and change it to take a ResourceRequest instead
of an API::URLRequest.

* UIProcess/API/C/WKPage.cpp:
(WKPageLoadURL):
(WKPageLoadURLWithUserData):
(WKPageLoadURLRequest):
(WKPageLoadURLRequestWithUserData):
* UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController loadRequest:userData:]):
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView loadRequest:]):
* UIProcess/WebInspectorProxy.cpp:
(WebKit::decidePolicyForNavigationAction):
(WebKit::WebInspectorProxy::createInspectorPage):
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadRequest):
(WebKit::WebPageProxy::loadFile):
* UIProcess/WebPageProxy.h:
* UIProcess/cf/WebPageProxyCF.cpp:
(WebKit::WebPageProxy::restoreFromSessionStateData):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadRequest):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:

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

6 years ago2014-01-29 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Wed, 29 Jan 2014 20:38:48 +0000 (20:38 +0000)]
2014-01-29  Oliver Hunt  <oliver@apple.com>

        This dereference should not actually be necessary, and
        is producing deprecation warnings with newer perls

        * bindings/scripts/CodeGeneratorJS.pm:
        (GenerateAttributesHashTable):

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

6 years agoMake DOM attributes appear to be faux accessor properties
oliver@apple.com [Wed, 29 Jan 2014 20:33:13 +0000 (20:33 +0000)]
Make DOM attributes appear to be faux accessor properties
https://bugs.webkit.org/show_bug.cgi?id=127797

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Add flag so we can identify which properties should have the old
custom property semantics vs. the new faux accessors. Update the
inspector protocol accordingly.

These faux accessors produce descriptors with "get" and "set"
properties, but both values are undefined so can't be used
directly. A few custom properties actually require their
existing magical behaviour, so we now have a flag to
distinguish the expected output.

* inspector/InjectedScriptSource.js:
(.):
* runtime/JSObject.cpp:
(JSC::JSObject::getOwnPropertyDescriptor):
* runtime/PropertyDescriptor.cpp:
(JSC::PropertyDescriptor::setCustomDescriptor):
* runtime/PropertyDescriptor.h:
* runtime/PropertySlot.h:

Source/WebCore:

Refactor the bindings generator, and make sure we emit
the CustomAccessor flag on properties that should
appear to be accessors.

* bindings/scripts/CodeGeneratorJS.pm:
(GenerateGetOwnPropertySlotBody):
(GenerateAttributesHashTable):
(GenerateImplementation):

LayoutTests:

These properties now show up as accessors in these tests

* fast/dom/Window/replaceable-expected.txt:
* fast/dom/Window/replaceable.html:
* js/dom/getOwnPropertyDescriptor-expected.txt:
* js/resources/getOwnPropertyDescriptor.js:

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

6 years agoWebKit Bot Watcher's Dashboard: Add support for using HTTP authentication with Buildbot
dbates@webkit.org [Wed, 29 Jan 2014 20:23:00 +0000 (20:23 +0000)]
WebKit Bot Watcher's Dashboard: Add support for using HTTP authentication with Buildbot
https://bugs.webkit.org/show_bug.cgi?id=127784

Reviewed by Alexey Proskuryakov.

Implement support for querying a Buildbot that requires HTTP authentication to access it.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Buildbot.js:
(Buildbot): Add optional argument, options, to pass a dictionary of Buildbot options.
For now, we only support a single option, needsAuthentication, to indicate whether the
Buildbots requires HTTP authentication (defaults to false - HTTP authentication is
not required).
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
(BuildbotIteration.prototype.loadLayoutTestResults): Modified to pass JSONP callback name
to JSON.load() using the option dictionary.
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
(BuildbotQueue.prototype.update): Modified to pass withCredentials to JSON.load().
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Utilities.js:
(JSON.load): Removed optional argument jsonpCallbackName and added optional argument options,
which is a dictionary. The argument jsonpCallbackName is now specified as an entry in the
options dictionary. Added boolean options withCredentials to toggle querying with HTTP
authentication credentials.

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

6 years agoEFL port should stop using COMPILE_ASSERT_MATCHING_ENUM macros
ryuan.choi@samsung.com [Wed, 29 Jan 2014 20:17:37 +0000 (20:17 +0000)]
EFL port should stop using COMPILE_ASSERT_MATCHING_ENUM macros
https://bugs.webkit.org/show_bug.cgi?id=127801

Reviewed by Anders Carlsson.

Source/WebKit:

* PlatformEfl.cmake: Removed AssertMatchingEnums.cpp

Source/WebKit/efl:

Instead of COMPILE_ASSERT_MATCHING_ENUMS with static_cast, this patch
added switch and conversion functions if needed.

* WebCoreSupport/AssertMatchingEnums.cpp: Removed.
* WebCoreSupport/FrameLoaderClientEfl.cpp:
(WebCore::FrameLoaderClientEfl::dispatchDecidePolicyForNavigationAction):
* ewk/ewk_contextmenu.cpp:
(toEwkContextMenuAction):
* ewk/ewk_contextmenu.h:
Added missing enum variables. These are required not to break the build.
* ewk/ewk_frame.cpp:
(ewk_frame_text_selection_type_get):
* ewk/ewk_touch_event.cpp:
(toPlatformTouchPointState):
(WebKitPlatformTouchEvent::WebKitPlatformTouchEvent):
* ewk/ewk_view.cpp:
(ewk_view_text_direction_set):
(ewk_view_navigation_policy_decision):
(toViewMode):
(toEwkViewMode):
(ewk_view_mode_set):
(ewk_view_mode_get):
(ewk_view_visibility_state_get):
* ewk/ewk_view_private.h:

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

6 years ago[GTK] [CMake] Fix the build after r162835
mrobinson@webkit.org [Wed, 29 Jan 2014 19:51:24 +0000 (19:51 +0000)]
[GTK] [CMake] Fix the build after r162835
https://bugs.webkit.org/show_bug.cgi?id=127753

Reviewed by Gustavo Noronha Silva.

* CMakeLists.txt: Add support for using the prefix header (GCC / clang only for now)
when WebKit2_USE_PREFIX_HEADER is set to true.
* PlatformGTK.cmake: Set WebKit2_USE_PREFIX_HEADER support and no longer process some message.in files.
* WebKit2Prefix.h: Add support for the CMake GTK+ build.

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

6 years agoBuild fix.
bdakin@apple.com [Wed, 29 Jan 2014 19:40:00 +0000 (19:40 +0000)]
Build fix.

* bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp:
* llint/LowLevelInterpreter.cpp:

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

6 years agoBuild fix.
mitz@apple.com [Wed, 29 Jan 2014 19:38:41 +0000 (19:38 +0000)]
Build fix.

* bytecode/ProfiledCodeBlockJettisoningWatchpoint.cpp: Added a newline at the end of the
file.

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

6 years agobuild.webkit.org/dashboard links to an old failing build rather than the most recent
ap@apple.com [Wed, 29 Jan 2014 19:35:55 +0000 (19:35 +0000)]
build.webkit.org/dashboard links to an old failing build rather than the most recent
https://bugs.webkit.org/show_bug.cgi?id=127765
<rdar://problem/15795228>

Reviewed by Timothy Hatcher.

This patch changes builder view to not show how many failures there were in a row,
because it is not very relevant, and complicates the UI. Instead, we just show the
latest failing build and the latest successful one.

The patch also removes commit history popovers from revisions that can not be correlated
with any change. These popovers are only helpful in the first line, when there is
another line for comparison below. In this case, it's useful to see what changed
between the revisions, but even then, only if it was an actual failure, not a buildbot
exception.

* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotBuilderQueueView.js:
(BuildbotBuilderQueueView.prototype.update.appendBuilderQueueStatus):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueue.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotQueueView.js:
(BuildbotQueueView.prototype._presentPopoverForRevisionRange):
(BuildbotQueueView.prototype._revisionPopoverContentForIteration):
(BuildbotQueueView.prototype.revisionContentForIteration):
* BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
(BuildbotTesterQueueView.prototype.update.appendBuilderQueueStatus):

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

6 years agoPrepare for accelerated compositing on WinCairo.
alex.christensen@flexsim.com [Wed, 29 Jan 2014 19:20:34 +0000 (19:20 +0000)]
Prepare for accelerated compositing on WinCairo.
https://bugs.webkit.org/show_bug.cgi?id=127843

Reviewed by Anders Carlsson.

Source/WebCore:

* platform/network/curl/ResourceHandleManager.cpp:
(WebCore::setupFormData):
Remove VS2005 warning workaround.
* WebCore.vcxproj/WebCore.vcxproj:
Remove StyleCachedImageSet.cpp and CSSImageSetValue.cpp from the Win64 build
to avoid warnings because they are also included in StyleAllInOne.cpp and
CSSAllInOne.cpp, respectively.

Source/WebKit/win:

* WebPreferences.cpp:
Moved CACFLayerTreeHost.h inclusion to Apple-specific includes
to avoid compile errors in WinCairo when using accelerated compositing.

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

6 years agoMerge the jsCStack branch
msaboff@apple.com [Wed, 29 Jan 2014 19:18:54 +0000 (19:18 +0000)]
Merge the jsCStack branch
https://bugs.webkit.org/show_bug.cgi?id=127763

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
up to changeset 162958.

Source/WebCore:

Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
up to changeset 162958.

Source/WTF:

Changes from http://svn.webkit.org/repository/webkit/branches/jsCStack
up to changeset 162958.

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

6 years agoFixed the iOS build.
mitz@apple.com [Wed, 29 Jan 2014 18:52:16 +0000 (18:52 +0000)]
Fixed the iOS build.

* bindings/js/JSDOMWindowCustom.cpp: Updated for header renames.

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

6 years agoAdd a WebCrypto test to verify that BigInteger allows for leading zeroes
ap@apple.com [Wed, 29 Jan 2014 18:51:04 +0000 (18:51 +0000)]
Add a WebCrypto test to verify that BigInteger allows for leading zeroes
https://bugs.webkit.org/show_bug.cgi?id=127804

Reviewed by Darin Adler.

This already worked, but wasn't tested for.

* crypto/subtle/rsassa-pkcs1-v1_5-generate-key-with-leading-zeroes-in-exponent-expected.txt: Added.
* crypto/subtle/rsassa-pkcs1-v1_5-generate-key-with-leading-zeroes-in-exponent.html: Added.

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

6 years agoRemove ENABLE(JAVASCRIPT_DEBUGGER) guards
ossy@webkit.org [Wed, 29 Jan 2014 18:31:56 +0000 (18:31 +0000)]
Remove ENABLE(JAVASCRIPT_DEBUGGER) guards
https://bugs.webkit.org/show_bug.cgi?id=127840

Reviewed by Mark Lam.

.:

* Source/cmake/WebKitFeatures.cmake:
* Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

* inspector/scripts/CodeGeneratorInspector.py:

Source/WebCore:

* bindings/js/JSDOMWindowBase.cpp:
(WebCore::JSDOMWindowBase::supportsProfiling):
(WebCore::JSDOMWindowBase::supportsRichSourceInfo):
* bindings/js/PageScriptDebugServer.cpp:
* bindings/js/PageScriptDebugServer.h:
* bindings/js/ScriptProfile.cpp:
* bindings/js/ScriptProfile.h:
* bindings/js/ScriptProfileNode.h:
* bindings/js/ScriptProfiler.cpp:
* bindings/js/ScriptProfiler.h:
* bindings/js/WorkerScriptDebugServer.cpp:
* bindings/js/WorkerScriptDebugServer.h:
* inspector/InspectorConsoleAgent.h:
* inspector/InspectorConsoleInstrumentation.h:
(WebCore::InspectorInstrumentation::getCurrentUserInitiatedProfileName):
* inspector/InspectorController.cpp:
(WebCore::InspectorController::InspectorController):
(WebCore::InspectorController::resume):
* inspector/InspectorController.h:
* inspector/InspectorDOMDebuggerAgent.cpp:
* inspector/InspectorDOMDebuggerAgent.h:
* inspector/InspectorHeapProfilerAgent.cpp:
* inspector/InspectorHeapProfilerAgent.h:
* inspector/InspectorInstrumentation.cpp:
(WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
(WebCore::InspectorInstrumentation::isDebuggerPausedImpl):
(WebCore::InspectorInstrumentation::willInsertDOMNodeImpl):
(WebCore::InspectorInstrumentation::didInsertDOMNodeImpl):
(WebCore::InspectorInstrumentation::willRemoveDOMNodeImpl):
(WebCore::InspectorInstrumentation::didRemoveDOMNodeImpl):
(WebCore::InspectorInstrumentation::willModifyDOMAttrImpl):
(WebCore::InspectorInstrumentation::didInvalidateStyleAttrImpl):
(WebCore::InspectorInstrumentation::willSendXMLHttpRequestImpl):
(WebCore::InspectorInstrumentation::scriptExecutionBlockedByCSPImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
(WebCore::InspectorInstrumentation::profilerEnabledImpl):
(WebCore::InspectorInstrumentation::willEvaluateWorkerScript):
(WebCore::InspectorInstrumentation::pauseOnNativeEventIfNeeded):
(WebCore::InspectorInstrumentation::cancelPauseOnNativeEvent):
* inspector/InspectorInstrumentation.h:
* inspector/InspectorProfilerAgent.cpp:
* inspector/InspectorProfilerAgent.h:
* inspector/InstrumentingAgents.cpp:
(WebCore::InstrumentingAgents::InstrumentingAgents):
(WebCore::InstrumentingAgents::reset):
* inspector/InstrumentingAgents.h:
* inspector/PageDebuggerAgent.cpp:
* inspector/PageDebuggerAgent.h:
* inspector/ScriptProfile.idl:
* inspector/ScriptProfileNode.idl:
* inspector/WebDebuggerAgent.cpp:
* inspector/WebDebuggerAgent.h:
* inspector/WorkerDebuggerAgent.cpp:
* inspector/WorkerDebuggerAgent.h:
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::WorkerInspectorController):
(WebCore::WorkerInspectorController::resume):
* inspector/WorkerInspectorController.h:
* inspector/WorkerRuntimeAgent.cpp:
(WebCore::WorkerRuntimeAgent::pauseWorkerGlobalScope):
* inspector/WorkerRuntimeAgent.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
* page/Console.cpp:
* page/Console.h:
* page/Console.idl:
* testing/Internals.cpp:
(WebCore::Internals::resetToConsistentState):
* workers/WorkerMessagingProxy.cpp:
(WebCore::connectToWorkerGlobalScopeInspectorTask):
(WebCore::WorkerMessagingProxy::connectToInspector):
(WebCore::disconnectFromWorkerGlobalScopeInspectorTask):
(WebCore::WorkerMessagingProxy::disconnectFromInspector):
(WebCore::dispatchOnInspectorBackendTask):
(WebCore::WorkerMessagingProxy::sendMessageToInspector):

Source/WebKit/gtk:

* webkit/webkitwebinspector.cpp:
(webkit_web_inspector_set_property):
(webkit_web_inspector_get_property):

Source/WebKit2:

* WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::startJavaScriptDebugging):
(WebKit::WebInspector::stopJavaScriptDebugging):
(WebKit::WebInspector::setJavaScriptProfilingEnabled):
(WebKit::WebInspector::startJavaScriptProfiling):
(WebKit::WebInspector::stopJavaScriptProfiling):

Source/WTF:

* wtf/FeatureDefines.h:

Tools:

* Scripts/webkitperl/FeatureList.pm:

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

6 years ago[iOS] cleanup MediaPlayer.cpp
eric.carlson@apple.com [Wed, 29 Jan 2014 17:36:06 +0000 (17:36 +0000)]
[iOS] cleanup MediaPlayer.cpp
https://bugs.webkit.org/show_bug.cgi?id=127821

Reviewed by Jer Noble.

Don't register MediaPlayerPrivateIOS unless the runtime setting for media player proxy is set.

* platform/graphics/MediaPlayer.cpp: Don't define PlatformMediaEngineClassName on iOS
(WebCore::installedMediaEngines): Drive by cleanup to return early if registration has
    already happened.
(WebCore::MediaPlayer::MediaPlayer): Don't force-register the first media engine unless
    isVideoPluginProxyEnabled returns true.

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

6 years agoSource/WebCore: Have XHR.getResponseHeader() return null and XHR.getAllResponseHeader...
commit-queue@webkit.org [Wed, 29 Jan 2014 17:03:59 +0000 (17:03 +0000)]
Source/WebCore: Have XHR.getResponseHeader() return null and XHR.getAllResponseHeader() return the empty string in initial ready states
https://bugs.webkit.org/show_bug.cgi?id=125840

Patch by Youenn Fablet <youennf@gmail.com> on 2014-01-29
Reviewed by Alexey Proskuryakov.

Merging https://chromium.googlesource.com/chromium/blink/+/d201caf874a0bd6f101f517462b3cf1d8c5fce3d
This patch makes it clear that null/empty string is returned whenever the error flag is set.
This new code path is covered by the added test.

Test: http/tests/xmlhttprequest/response-access-on-error.html

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::getAllResponseHeaders):
(WebCore::XMLHttpRequest::getResponseHeader):
* xml/XMLHttpRequest.h:
* xml/XMLHttpRequest.idl:

LayoutTests: Have XHR.getResponseHeader() return null and XHR.getAllResponseHeaders() return empty string in initial ready states
https://bugs.webkit.org/show_bug.cgi?id=125840

Patch by Youenn Fablet <youennf@gmail.com> on 2014-01-29
Reviewed by Alexey Proskuryakov.

Merging https://chromium.googlesource.com/chromium/blink/+/d201caf874a0bd6f101f517462b3cf1d8c5fce3d
The new test exercices the new code path in case xhr received HTTP headers but m_error is set

* http/tests/xmlhttprequest/getAllResponseHeaders-expected.txt:
* http/tests/xmlhttprequest/getAllResponseHeaders.html:
* http/tests/xmlhttprequest/getResponseHeader-expected.txt:
* http/tests/xmlhttprequest/getResponseHeader.html:
* http/tests/xmlhttprequest/response-access-on-error-expected.txt: Added.
* http/tests/xmlhttprequest/response-access-on-error.html: Added.

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

6 years agoREGRESSION (r162947): Repaint test results are different between WK1 and WK2
antti@apple.com [Wed, 29 Jan 2014 16:26:31 +0000 (16:26 +0000)]
REGRESSION (r162947): Repaint test results are different between WK1 and WK2
https://bugs.webkit.org/show_bug.cgi?id=127814

Source/WebCore:

Reviewed by Anders Carlsson.

* page/FrameView.cpp:
(WebCore::FrameView::repaintContentRectangle):

    Move repaint rect logging to RenderView.

* rendering/RenderView.cpp:
(WebCore::RenderView::repaintViewRectangle):

    Record raw repaint rects instead of optimized ones.

LayoutTests:

Revert test results changes. We now always log raw repaint rects which are same between platforms.

* compositing/repaint/resize-repaint-expected.txt:
* fast/box-shadow/shadow-repaint-expected.txt:
* fast/css-grid-layout/grid-element-change-columns-repaint-expected.txt:
* fast/css-grid-layout/grid-element-change-rows-repaint-expected.txt:
* fast/css-grid-layout/grid-item-change-column-repaint-expected.txt:
* fast/css-grid-layout/grid-item-change-row-repaint-expected.txt:
* fast/regions/repaint/element-in-named-flow-absolute-from-fixed-expected.txt:
* fast/regions/repaint/element-in-named-flow-fixed-from-absolute-expected.txt:
* fast/regions/repaint/element-inflow-fixed-from-outflow-static-expected.txt:
* fast/regions/repaint/element-outflow-static-from-inflow-fixed-expected.txt:
* fast/regions/repaint/invalid-region-repaint-crash-expected.txt:
* fast/regions/repaint/repaint-element-inside-relative-region-expected.txt:
* fast/regions/repaint/repaint-regions-overflow-expected.txt:
* fast/repaint/background-shorthand-with-gradient-and-height-changes-expected.txt:
* fast/repaint/background-shorthand-with-gradient-and-height-changes.html:
* fast/repaint/horizontal-bt-overflow-child-expected.txt:
* fast/repaint/horizontal-bt-overflow-parent-expected.txt:
* fast/repaint/horizontal-bt-overflow-same-expected.txt:
* fast/repaint/negative-text-indent-with-overflow-hidden-expected.txt:
* fast/repaint/overflow-flipped-writing-mode-table-expected.txt:
* fast/repaint/reflection-table-layout-expected.txt:
* fast/repaint/transform-table-layout-expected.txt:
* fast/repaint/vertical-overflow-child-expected.txt:
* fast/repaint/vertical-overflow-parent-expected.txt:
* fast/repaint/vertical-overflow-same-expected.txt:
* platform/mac-wk2/TestExpectations:
* platform/mac/compositing/repaint/invalidations-on-composited-layers-expected.txt:
* platform/mac/fast/images/repaint-subrect-grid-expected.txt:
* svg/repaint/repaint-webkit-svg-shadow-container-expected.txt:

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

6 years agoIDB: Serialize IDBKeyDatas to disk, not IDBKeys
beidson@apple.com [Wed, 29 Jan 2014 16:17:51 +0000 (16:17 +0000)]
IDB: Serialize IDBKeyDatas to disk, not IDBKeys
https://bugs.webkit.org/show_bug.cgi?id=127829

Reviewed by Tim Horton.

Source/WebCore:

Move encode/decode from IDBKey to IDBKeyData.

* Modules/indexeddb/IDBKey.cpp:
* Modules/indexeddb/IDBKey.h:

* Modules/indexeddb/IDBKeyData.cpp:
(WebCore::IDBKeyData::IDBKeyData):
(WebCore::IDBKeyData::encode):
(WebCore::IDBKeyData::decode):
* Modules/indexeddb/IDBKeyData.h:

* WebCore.exp.in:

Source/WebKit2:

Serialize IDBKeyDatas, not IDBKeys.

* DatabaseProcess/IndexedDB/IDBSerialization.cpp:
(WebKit::deserializeIDBKeyPath):
(WebKit::serializeIDBKeyData):
* DatabaseProcess/IndexedDB/IDBSerialization.h:

* DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRecordFromObjectStore):
(WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRangeRecordFromObjectStore):

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

6 years agoREGRESSION (r162947): css3/flexbox/multiline-justify-content.html and css3/flexbox...
antti@apple.com [Wed, 29 Jan 2014 16:11:47 +0000 (16:11 +0000)]
REGRESSION (r162947): css3/flexbox/multiline-justify-content.html and css3/flexbox/position-absolute-child.html are timing out
https://bugs.webkit.org/show_bug.cgi?id=127809

Reviewed by Anders Carlsson.

Source/WebCore:

These tests generate very large number of small repaint rectangles that overwhelm the region code.

* page/FrameView.cpp:
(WebCore::FrameView::repaintContentRectangle):
* platform/graphics/Region.h:
(WebCore::Region::gridSize):
(WebCore::Region::Shape::gridSize):

    Add accessor for getting the current region grid complexity.

* rendering/RenderView.cpp:
(WebCore::RenderView::repaintViewRectangle):

    If the region gets very complex merge the repaint rects into a single big rectangle.

LayoutTests:

* platform/mac/TestExpectations:

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

6 years ago[CSSRegions] Unable to scroll a scrollable container for regions using mouse wheel
stavila@adobe.com [Wed, 29 Jan 2014 15:20:56 +0000 (15:20 +0000)]
[CSSRegions] Unable to scroll a scrollable container for regions using mouse wheel
https://bugs.webkit.org/show_bug.cgi?id=123886

Source/WebCore:

When an element flowed into a scrollable region is scrolled using the mouse wheel, the event
needs to be propagated to the region containing that element, on top of which the cursor
is located.

Reviewed by Antti Koivisto.

Tests: fast/regions/wheel-scroll-abspos.html
       fast/regions/wheel-scroll.html

* page/EventHandler.cpp:
(WebCore::scrollNode):
(WebCore::EventHandler::defaultWheelEventHandler):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::scroll):
(WebCore::RenderBox::scrollWithWheelEventLocation):
* rendering/RenderBox.h:
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::regionFromAbsolutePointAndBox):
* rendering/RenderFlowThread.h:

LayoutTests:

Added tests for scrolling elements flowed into scrollable regions.

Reviewed by Antti Koivisto.

* fast/regions/wheel-scroll-abspos-expected.html: Added.
* fast/regions/wheel-scroll-abspos.html: Added.
* fast/regions/wheel-scroll-expected.html: Added.
* fast/regions/wheel-scroll.html: Added.

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

6 years agoREGRESSION(r162922): [SOUP] Several tests are failing in EFL and GTK+ after r162922
carlosgc@webkit.org [Wed, 29 Jan 2014 14:52:22 +0000 (14:52 +0000)]
REGRESSION(r162922): [SOUP] Several tests are failing in EFL and GTK+ after r162922
https://bugs.webkit.org/show_bug.cgi?id=127836

Reviewed by Gustavo Noronha Silva.

The problem is that I assumed that several things done in
ResourceRequest::soupURI() were always desired, so I moved them to
URL. This patch restores the previous behaviour, so that those
tings are only done right before making a request.

* platform/network/soup/ResourceRequestSoup.cpp:
(WebCore::ResourceRequest::createSoupURI):
* platform/soup/URLSoup.cpp:
(WebCore::URL::createSoupURI):

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

6 years ago[EFL][WK2] REGRESSION (r162586-r162589): accessibility/range-alter-by-percent.html...
k.czech@samsung.com [Wed, 29 Jan 2014 14:24:08 +0000 (14:24 +0000)]
[EFL][WK2] REGRESSION (r162586-r162589): accessibility/range-alter-by-percent.html failing
https://bugs.webkit.org/show_bug.cgi?id=127724

Unreviewed EFL gardening. Passes after r162932.

* platform/efl/TestExpectations: Test is no longer failing.

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

6 years agoWeb Inspector: [REGRESSION(r162931)] Tab navigation broken in DataGrid
commit-queue@webkit.org [Wed, 29 Jan 2014 13:57:53 +0000 (13:57 +0000)]
Web Inspector: [REGRESSION(r162931)] Tab navigation broken in DataGrid
https://bugs.webkit.org/show_bug.cgi?id=127816

Patch by Diego Pino Garcia <dpino@igalia.com> on 2014-01-29
Reviewed by Timothy Hatcher.

* UserInterface/DataGrid.js:
(WebInspector.DataGrid.prototype.moveToNextIfNeeded):
(WebInspector.DataGrid.prototype._editingCommitted):
Change columnIdentifier values 0 and 1 to strings "0" and "1".

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

6 years ago[ATK] Expose aria-describedby with ATK_RELATION_DESCRIBED_BY
k.czech@samsung.com [Wed, 29 Jan 2014 13:16:27 +0000 (13:16 +0000)]
[ATK] Expose aria-describedby with ATK_RELATION_DESCRIBED_BY
https://bugs.webkit.org/show_bug.cgi?id=121684

Reviewed by Mario Sanchez Prada.

Source/WebCore:

Exposed aria-describedby by ATK_RELATION_DESCRIBED_BY.
Moved elementsFromAttribut to AccessibilityObject to have common interface
for AccessibilityNodeObject and AccessibilityRenderObject. Implemented
supportsARIADescribedBy and ariaDescribedByElements to better deal with aria-describedby attribute.

No new tests. Covered by existed one.

* accessibility/AccessibilityNodeObject.cpp:
* accessibility/AccessibilityNodeObject.h:
* accessibility/AccessibilityObject.cpp:
(WebCore::AccessibilityObject::elementsFromAttribute):
* accessibility/AccessibilityObject.h:
(WebCore::AccessibilityObject::supportsARIADescribedBy):
(WebCore::AccessibilityObject::ariaDescribedByElements):
* accessibility/AccessibilityRenderObject.cpp:
(WebCore::AccessibilityRenderObject::supportsARIADescribedBy):
(WebCore::AccessibilityRenderObject::ariaDescribedByElements):
* accessibility/AccessibilityRenderObject.h:
* accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(setAtkRelationSetFromCoreObject):

Tools:

Implementing helpText by using relation ATK_RELATION_DESCRIBED_BY.

* DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:
(AccessibilityUIElement::helpText):
* WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::helpText):

LayoutTests:

Slightly extended test so that it could test aria-describedby with multiple id references.

* accessibility/aria-describedby-on-input-expected.txt:
* accessibility/aria-describedby-on-input.html:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:

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

6 years ago[CSS Grid Layout] minmax() should be a CSSFunction instead of a CSSValueList
svillar@igalia.com [Wed, 29 Jan 2014 10:56:48 +0000 (10:56 +0000)]
[CSS Grid Layout] minmax() should be a CSSFunction instead of a CSSValueList
https://bugs.webkit.org/show_bug.cgi?id=127057

Source/WebCore:

Reviewed by Antti Koivisto.

We were incorrectly dumping minmax(x,y) as "x y" instead of
"minmax(x,y)". That's because we were treating minmax() internally
as a CSSValueList instead of a CSSFunction. Replaced that and also
added some extra information to our tests in order to check that
we don't regress. From now on the CSS grid layout testing helper
functions print not only the computed style but also the contents
of element.style.webkitGridDefinition{Columns|Rows}.

* css/CSSFunctionValue.h:
(WebCore::CSSFunctionValue::arguments):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseGridTrackList):
(WebCore::CSSParser::parseGridTrackRepeatFunction):
(WebCore::CSSParser::parseGridTrackSize):
* css/CSSParser.h:
* css/StyleResolver.cpp:
(WebCore::createGridTrackSize):

LayoutTests:

Include the output of element.style.webkitGridDefinition{Columns|Rows}
as part of the expected output.

* fast/css-grid-layout/grid-columns-rows-get-set-expected.txt:
* fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt:
* fast/css-grid-layout/named-grid-line-get-set-expected.txt:
* fast/css-grid-layout/named-grid-line-get-set.html:
* fast/css-grid-layout/resources/grid-definitions-parsing-utils.js:
(testGridDefinitionsSetJSValues):
(testNonGridDefinitionsSetJSValues):
(checkGridDefinitionsSetJSValues):

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

6 years agoRename notifyRendererOfSelectionChange
rniwa@webkit.org [Wed, 29 Jan 2014 09:32:29 +0000 (09:32 +0000)]
Rename notifyRendererOfSelectionChange
https://bugs.webkit.org/show_bug.cgi?id=127831

Reviewed by Antti Koivisto.

Renamed notifyRendererOfSelectionChange to updateSelectionCachesIfSelectionIsInsideTextFormControl.

* WebCore.order: Removed the exported symbol name as it's not used in WebKit or WebKit2 code.
* editing/FrameSelection.cpp:
(WebCore::FrameSelection::setSelection):
(WebCore::FrameSelection::selectAll):
(WebCore::FrameSelection::updateSelectionCachesIfSelectionIsInsideTextFormControl): Don't update the style since the existence
of text form control's shadow DOM no longer depends on renderer.
* editing/FrameSelection.h:
* html/HTMLTextFormControlElement.cpp:
(WebCore::HTMLTextFormControlElement::selectionChanged): Don't check renderer() for the same reason.
* page/EventHandler.cpp:
(WebCore::EventHandler::handleMouseReleaseEvent):

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