1. 04 Sep, 2012 1 commit
  2. 31 Aug, 2012 1 commit
    • wjmaclean@chromium.org's avatar
      [chromium] Make link highlighter use same node selection criteria as Chromium for Android. · 41bcf4eb
      wjmaclean@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95371
      
      Reviewed by James Robinson.
      
      This CL brings the selection criteria for link highlight targets into alignment with Chromium for Android.
      
      Source/WebKit/chromium:
      
      * src/WebViewImpl.cpp:
      (WebKit::highlightConditions):
      (WebKit::WebViewImpl::bestTouchLinkNode):
      * tests/data/test_touch_link_highlight.html:
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-ZIndex.html: Copied from LayoutTests/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-background.html.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-background.html:
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-body.html: Copied from LayoutTests/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-background.html.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-ZIndex-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-ZIndex-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-body-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-body-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127342 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      41bcf4eb
  3. 29 Aug, 2012 3 commits
    • commit-queue@webkit.org's avatar
      [chromium] Implement disambiguation popup (a.k.a. Link Preview) · dffbcdaf
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94182
      
      Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-08-29
      Reviewed by Adam Barth.
      
      In this new implementation, we add a new WebViewClient::handleDisambiguationPopup delegate.
      The disambiguation sequence will be initiated by the gesture event handler
      in WebViewImpl if an ambiguous tap is detected, then
      m_client->handleDisambiguationPopup will be called, so the embedder can
      decide whether to swallow the touch event and show a popup.
      
      New test: WebFrameTest.DisambiguationPopupTest
      
      * WebKit.gyp:
      * features.gypi:
      * public/WebInputEvent.h:
      (WebGestureEvent):
      (WebKit::WebGestureEvent::WebGestureEvent):
      * public/WebTouchCandidatesInfo.h: Removed.
      * public/WebView.h:
      (WebKit):
      * public/WebViewClient.h:
      (WebKit):
      (WebViewClient):
      (WebKit::WebViewClient::triggersLinkPreview):
      * src/WebInputEvent.cpp:
      (SameSizeAsWebGestureEvent):
      * src/WebViewImpl.cpp:
      (WebKit):
      (WebKit::WebViewImpl::handleGestureEventWithLinkPreview):
      (WebKit::WebViewImpl::handleGestureEvent):
      * src/WebViewImpl.h:
      (WebViewImpl):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dffbcdaf
    • wjmaclean@chromium.org's avatar
      [chromium] Add WebSettings support for flag to enable/disable gesture tap highlights. · 03edf2d5
      wjmaclean@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95119
      
      Reviewed by Adam Barth.
      
      Add support to WebSettings for flag to enable/disable gesture tap highlights. Relies on existing tests.
      
      * public/WebSettings.h:
      * src/WebSettingsImpl.cpp:
      (WebKit::WebSettingsImpl::WebSettingsImpl):
      (WebKit::WebSettingsImpl::setGestureTapHighlightEnabled):
      (WebKit):
      * src/WebSettingsImpl.h:
      (WebSettingsImpl):
      (WebKit::WebSettingsImpl::gestureTapHighlightEnabled):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::handleGestureEvent):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      03edf2d5
    • wjmaclean@chromium.org's avatar
      [chromium] Link highlight should clear on page navigation. · c5edd1a7
      wjmaclean@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95129
      
      Reviewed by James Robinson.
      
      Modified WebViewImpl to clear link highlight when navigating to new url.
      
      Source/WebKit/chromium:
      
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::didCommitLoad):
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-navigate.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/gesture-tapHighlight-simple-navigate-destination.html: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-navigate-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-navigate-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@127023 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5edd1a7
  4. 28 Aug, 2012 4 commits
  5. 27 Aug, 2012 2 commits
    • commit-queue@webkit.org's avatar
      [Chromium] Remove stub for WebView::getTouchHighlightQuads() · 6fb8d4d4
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=95164
      
      Patch by Tien-Ren Chen <trchen@chromium.org> on 2012-08-27
      Reviewed by Adam Barth.
      
      Reverts https://bugs.webkit.org/show_bug.cgi?id=92997
      We're uploading a new implementation that no longer uses this API.
      See https://bugs.webkit.org/show_bug.cgi?id=94182
      
      * WebKit.gyp:
      * public/WebTouchCandidatesInfo.h: Removed.
      * public/WebView.h:
      (WebKit):
      * src/WebViewImpl.cpp:
      * src/WebViewImpl.h:
      (WebViewImpl):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126841 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fb8d4d4
    • commit-queue@webkit.org's avatar
      Rename RegisterProtocolHandler API to NavigatorContentUtils · 30167703
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94920
      
      Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-08-27
      Reviewed by Adam Barth.
      
      .:
      
      Modified configuration files so that they contain renamed NavigatorContentUtils-prefixed files.
      
      * Source/cmake/OptionsBlackBerry.cmake:
      * Source/cmake/OptionsEfl.cmake:
      * Source/cmake/WebKitFeatures.cmake:
      * Source/cmakeconfig.h.cmake:
      
      Source/JavaScriptCore:
      
      ENABLE_REGISTER_PROTOCOL_HANDLER is renamed to ENABLE_NAVIGATOR_CONTENT_UTILS.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebCore:
      
      Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
      Module 'protocolhandler' is renamed to 'navigatorcontentutils'.
      
      No new tests as there is no new functionality.
      
      * CMakeLists.txt:
      * Configurations/FeatureDefines.xcconfig:
      * GNUmakefile.am:
      * GNUmakefile.features.am:
      * GNUmakefile.list.am:
      * Modules/navigatorcontentutils/NavigatorContentUtils.cpp: Renamed from Source/WebCore/Modules/protocolhandler/NavigatorRegisterProtocolHandler.cpp.
      (WebCore):
      (WebCore::initProtocolHandlerWhitelist):
      (WebCore::verifyCustomHandlerURL):
      (WebCore::isProtocolWhitelisted):
      (WebCore::verifyProtocolHandlerScheme):
      (WebCore::NavigatorContentUtils::from):
      (WebCore::NavigatorContentUtils::~NavigatorContentUtils):
      (WebCore::NavigatorContentUtils::create):
      (WebCore::NavigatorContentUtils::registerProtocolHandler):
      (WebCore::customHandlersStateString):
      (WebCore::NavigatorContentUtils::isProtocolHandlerRegistered):
      (WebCore::NavigatorContentUtils::unregisterProtocolHandler):
      (WebCore::NavigatorContentUtils::supplementName):
      (WebCore::provideNavigatorContentUtilsTo):
      * Modules/navigatorcontentutils/NavigatorContentUtils.h: Renamed from Source/WebCore/Modules/protocolhandler/NavigatorRegisterProtocolHandler.h.
      (WebCore):
      (NavigatorContentUtils):
      (WebCore::NavigatorContentUtils::NavigatorContentUtils):
      (WebCore::NavigatorContentUtils::client):
      * Modules/navigatorcontentutils/NavigatorContentUtils.idl: Renamed from Source/WebCore/Modules/protocolhandler/NavigatorRegisterProtocolHandler.idl.
      * Modules/navigatorcontentutils/NavigatorContentUtilsClient.h: Renamed from Source/WebCore/Modules/protocolhandler/RegisterProtocolHandlerClient.h.
      (WebCore):
      (NavigatorContentUtilsClient):
      (WebCore::NavigatorContentUtilsClient::~NavigatorContentUtilsClient):
      * Target.pri:
      * WebCore.gyp/WebCore.gyp:
      * WebCore.gypi:
      * WebCore.pri:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.vcproj/WebCoreCommon.vsprops:
      * WebCore.vcproj/copyForwardingHeaders.cmd:
      
      Source/WebKit:
      
      Modified PlatformEfl.cmake so that it includes the renamed files.
      
      * PlatformEfl.cmake:
      
      Source/WebKit/blackberry:
      
      Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
      
      * WebCoreSupport/AboutDataEnableFeatures.in:
      * WebCoreSupport/ChromeClientBlackBerry.cpp:
      (WebCore):
      (WebCore::ChromeClientBlackBerry::registerProtocolHandler):
      * WebCoreSupport/ChromeClientBlackBerry.h:
      (ChromeClientBlackBerry):
      
      Source/WebKit/chromium:
      
      Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
      RegisterProtocolHandlerClientImpl is renamed to NavigatorContentUtilsClientImpl.
      
      * features.gypi:
      * src/ChromeClientImpl.cpp:
      (WebKit):
      (WebKit::NavigatorContentUtilsClientImpl::create):
      (WebKit::NavigatorContentUtilsClientImpl::NavigatorContentUtilsClientImpl):
      (WebKit::NavigatorContentUtilsClientImpl::registerProtocolHandler):
      * src/ChromeClientImpl.h:
      (NavigatorContentUtilsClientImpl):
      (WebKit::NavigatorContentUtilsClientImpl::~NavigatorContentUtilsClientImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::WebViewImpl):
      * src/WebViewImpl.h:
      
      Source/WebKit/efl:
      
      Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
      RegisterProtocolHandlerClientEfl is renamed to NavigatorContentUtilsClientEfl.
      
      * WebCoreSupport/NavigatorContentUtilsClientEfl.cpp: Renamed from Source/WebKit/efl/WebCoreSupport/RegisterProtocolHandlerClientEfl.cpp.
      (WebCore):
      (WebCore::customHandlerDataCreate):
      (WebCore::customHandlerDataDelete):
      (WebCore::NavigatorContentUtilsClientEfl::create):
      (WebCore::NavigatorContentUtilsClientEfl::NavigatorContentUtilsClientEfl):
      (WebCore::NavigatorContentUtilsClientEfl::registerProtocolHandler):
      (WebCore::NavigatorContentUtilsClientEfl::isProtocolHandlerRegistered):
      (WebCore::NavigatorContentUtilsClientEfl::unregisterProtocolHandler):
      * WebCoreSupport/NavigatorContentUtilsClientEfl.h: Renamed from Source/WebKit/efl/WebCoreSupport/RegisterProtocolHandlerClientEfl.h.
      (NavigatorContentUtilsClientEfl):
      (WebCore::NavigatorContentUtilsClientEfl::~NavigatorContentUtilsClientEfl):
      * ewk/ewk_custom_handler.cpp:
      * ewk/ewk_custom_handler_private.h:
      * ewk/ewk_view.cpp:
      (_Ewk_View_Private_Data):
      (_ewk_view_priv_new):
      
      Source/WebKit/gtk:
      
      Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
      RegisterProtocolHandlerClientGtk is renamed to NavigatorContentUtilsClientGtk.
      
      * GNUmakefile.am:
      * WebCoreSupport/NavigatorContentUtilsClientGtk.cpp: Renamed from Source/WebKit/gtk/WebCoreSupport/RegisterProtocolHandlerClientGtk.cpp.
      (WebKit):
      (WebKit::NavigatorContentUtilsClient::create):
      (WebKit::NavigatorContentUtilsClient::NavigatorContentUtilsClient):
      (WebKit::NavigatorContentUtilsClient::registerProtocolHandler):
      * WebCoreSupport/NavigatorContentUtilsClientGtk.h: Renamed from Source/WebKit/gtk/WebCoreSupport/RegisterProtocolHandlerClientGtk.h.
      (WebKit):
      (NavigatorContentUtilsClient):
      (WebKit::NavigatorContentUtilsClient::~NavigatorContentUtilsClient):
      * webkit/webkitwebview.cpp:
      (webkit_web_view_init):
      * webkit/webkitwebviewprivate.h:
      
      Source/WebKit/mac:
      
      ENABLE_REGISTER_PROTOCOL_HANDLER is renamed to ENABLE_NAVIGATOR_CONTENT_UTILS.
      
      * Configurations/FeatureDefines.xcconfig:
      
      Source/WebKit2:
      
      Renaming whatever RegisterProtocolHandler-prefixed to NavigatorContentUtils-prefixed.
      
      * Configurations/FeatureDefines.xcconfig:
      * WebProcess/WebCoreSupport/WebNavigatorContentUtilsClient.h: Renamed from Source/WebKit2/WebProcess/WebCoreSupport/WebRegisterProtocolHandlerClient.h.
      (WebKit):
      (WebNavigatorContentUtilsClient):
      (WebKit::WebNavigatorContentUtilsClient::~WebNavigatorContentUtilsClient):
      (WebKit::WebNavigatorContentUtilsClient::isProtocolHandlerRegistered):
      (WebKit::WebNavigatorContentUtilsClient::unregisterProtocolHandler):
      
      Tools:
      
      Renamed 'register-protocol-handler' feature to 'navigator-content-utils'.
      
      * Scripts/webkitperl/FeatureList.pm:
      * qmake/mkspecs/features/features.pri:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126735 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      30167703
  6. 24 Aug, 2012 4 commits
    • wjmaclean@chromium.org's avatar
      [chromium] WebViewImpl::enableTouchHighlight() should always clear any... · 91e68ecc
      wjmaclean@chromium.org authored
      [chromium] WebViewImpl::enableTouchHighlight() should always clear any existing highlight when invoked.
      https://bugs.webkit.org/show_bug.cgi?id=94978
      
      Reviewed by James Robinson.
      
      Modified WebViewImpl::enableTouchHighlight() so it always clears any existing highlight, even if no new
      highlight target is found.
      
      Source/WebKit/chromium:
      
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::enableTouchHighlight):
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-cancel.html: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-cancel-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-cancel-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      91e68ecc
    • jamesr@google.com's avatar
      [chromium] Convert WebLayerTreeView interface into pure virtual · 4858e5fa
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=94866
      
      Reviewed by Adrienne Walker.
      
      Source/Platform:
      
      This makes the WebLayerTreeView interface pure virtual to provide better insulation from the implementation.
      
      * chromium/public/WebLayerTreeView.h:
      (WebKit):
      (Settings):
      (WebLayerTreeView):
      (WebKit::WebLayerTreeView::~WebLayerTreeView):
      
      Source/WebCore:
      
      Renames CCLayerTreeHostClient::updateAnimations -> CCLayerTreeHostClient::animate to avoid a naming collision
      and to better match the other imperative-sounding calls (like layout).
      
      * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
      (WebCore::CCLayerTreeHost::updateAnimations):
      * platform/graphics/chromium/cc/CCLayerTreeHost.h:
      (CCLayerTreeHostClient):
      
      Source/WebKit/chromium:
      
      Updates WebLayerTreeView implementation and callers to new interface. The createGraphicsContext3D() wrapper
      stuff can just go away now since downstream has updated to createOutputSurface().
      
      * WebKit.gypi:
      * src/WebLayerTreeView.cpp: Removed.
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeView::create):
      (WebKit::WebLayerTreeViewImpl::WebLayerTreeViewImpl):
      (WebKit::WebLayerTreeViewImpl::initialize):
      (WebKit):
      (WebKit::WebLayerTreeViewImpl::setSurfaceReady):
      (WebKit::WebLayerTreeViewImpl::setRootLayer):
      (WebKit::WebLayerTreeViewImpl::clearRootLayer):
      (WebKit::WebLayerTreeViewImpl::compositorIdentifier):
      (WebKit::WebLayerTreeViewImpl::setViewportSize):
      (WebKit::WebLayerTreeViewImpl::layoutViewportSize):
      (WebKit::WebLayerTreeViewImpl::deviceViewportSize):
      (WebKit::WebLayerTreeViewImpl::setDeviceScaleFactor):
      (WebKit::WebLayerTreeViewImpl::deviceScaleFactor):
      (WebKit::WebLayerTreeViewImpl::setBackgroundColor):
      (WebKit::WebLayerTreeViewImpl::setHasTransparentBackground):
      (WebKit::WebLayerTreeViewImpl::setVisible):
      (WebKit::WebLayerTreeViewImpl::setPageScaleFactorAndLimits):
      (WebKit::WebLayerTreeViewImpl::startPageScaleAnimation):
      (WebKit::WebLayerTreeViewImpl::setNeedsAnimate):
      (WebKit::WebLayerTreeViewImpl::setNeedsRedraw):
      (WebKit::WebLayerTreeViewImpl::commitRequested):
      (WebKit::WebLayerTreeViewImpl::composite):
      (WebKit::WebLayerTreeViewImpl::updateAnimations):
      (WebKit::WebLayerTreeViewImpl::compositeAndReadback):
      (WebKit::WebLayerTreeViewImpl::finishAllRendering):
      (WebKit::WebLayerTreeViewImpl::renderingStats):
      (WebKit::WebLayerTreeViewImpl::setFontAtlas):
      (WebKit::WebLayerTreeViewImpl::loseCompositorContext):
      (WebKit::WebLayerTreeViewImpl::willBeginFrame):
      (WebKit::WebLayerTreeViewImpl::didBeginFrame):
      (WebKit::WebLayerTreeViewImpl::animate):
      (WebKit::WebLayerTreeViewImpl::layout):
      (WebKit::WebLayerTreeViewImpl::applyScrollAndScale):
      (WebKit::WebLayerTreeViewImpl::createOutputSurface):
      (WebKit::WebLayerTreeViewImpl::didRecreateOutputSurface):
      (WebKit::WebLayerTreeViewImpl::willCommit):
      (WebKit::WebLayerTreeViewImpl::didCommit):
      (WebKit::WebLayerTreeViewImpl::didCommitAndDrawFrame):
      (WebKit::WebLayerTreeViewImpl::didCompleteSwapBuffers):
      (WebKit::WebLayerTreeViewImpl::scheduleComposite):
      * src/WebLayerTreeViewImpl.h:
      (WebLayerTreeViewImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::renderingStats):
      (WebKit::WebViewImpl::startPageScaleAnimation):
      (WebKit::WebViewImpl::setCompositorSurfaceReady):
      (WebKit::WebViewImpl::animate):
      (WebKit::WebViewImpl::doPixelReadbackToCanvas):
      (WebKit::WebViewImpl::paint):
      (WebKit::WebViewImpl::composite):
      (WebKit::WebViewImpl::setNeedsRedraw):
      (WebKit::WebViewImpl::isInputThrottled):
      (WebKit::WebViewImpl::loseCompositorContext):
      (WebKit::WebViewImpl::setDeviceScaleFactor):
      (WebKit::WebViewImpl::computePageScaleFactorLimits):
      (WebKit::WebViewImpl::setIsTransparent):
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      (WebKit::WebViewImpl::scheduleCompositingLayerSync):
      (WebKit::WebViewImpl::invalidateRootLayerRect):
      (WebKit::WebViewImpl::setBackgroundColor):
      (WebKit::WebViewImpl::scheduleAnimation):
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit):
      (WebKit::WebViewImpl::updateLayerTreeViewport):
      (WebKit::WebViewImpl::setVisibilityState):
      * src/WebViewImpl.h:
      (WebKit):
      * tests/CCLayerTreeHostTest.cpp:
      * tests/CCThreadedTest.cpp:
      * tests/CCThreadedTest.h:
      (WebKitTests::TestHooks::animate):
      * tests/FakeCCLayerTreeHostClient.h:
      * tests/GraphicsLayerChromiumTest.cpp:
      (WebKit::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
      (WebKit::GraphicsLayerChromiumTest::~GraphicsLayerChromiumTest):
      (GraphicsLayerChromiumTest):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      * tests/WebLayerTreeViewTestCommon.h:
      (MockWebLayerTreeViewClient):
      
      Tools:
      
      Updates DumpRenderTree's WebViewHost to vend a WebCompositorOutputSurface so DumpRenderTree can run compositing
      tests.
      
      * DumpRenderTree/DumpRenderTree.gypi:
      * DumpRenderTree/chromium/WebViewHost.cpp:
      (WebViewHost::createOutputSurface):
      * DumpRenderTree/chromium/WebViewHost.h:
      (WebViewHost):
      * DumpRenderTree/chromium/WebViewHostOutputSurface.cpp: Copied from Source/WebKit/chromium/src/WebLayerTreeViewImpl.h.
      (WebKit):
      (WebKit::WebViewHostOutputSurface::WebViewHostOutputSurface):
      (WebKit::WebViewHostOutputSurface::~WebViewHostOutputSurface):
      (WebKit::WebViewHostOutputSurface::bindToClient):
      (WebKit::WebViewHostOutputSurface::capabilities):
      (WebKit::WebViewHostOutputSurface::context3D):
      (WebKit::WebViewHostOutputSurface::sendFrameToParentCompositor):
      * DumpRenderTree/chromium/WebViewHostOutputSurface.h: Copied from Source/WebKit/chromium/src/WebLayerTreeViewImpl.h.
      (WebKit):
      (WebViewHostOutputSurface):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4858e5fa
    • wjmaclean@chromium.org's avatar
      [chromium] gestureTapDown should not select a RenderView node as target. · 19b1353f
      wjmaclean@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94956
      
      Reviewed by James Robinson.
      
      Add check to prevent selecting a RenderView node as a highlight target.
      
      Source/WebKit/chromium:
      
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::bestTouchLinkNode):
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-background.html: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-background-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-background-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      19b1353f
    • commit-queue@webkit.org's avatar
      [V8] Refactor away IsolatedWorld · 4ddabd8f
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93971
      
      Patch by Dan Carney <dcarney@google.com> on 2012-08-24
      Reviewed by Kentaro Hara.
      
      Source/WebCore:
      
      Remove IsolatedWorld class as it was 1:1 with DOMWrapperWorld.
      This paves the way towards a JSC-like use of DOMWrapperWorld.
      
      No new tests. No change in functionality.
      
      * UseV8.cmake:
      * WebCore.gypi:
      * bindings/v8/DOMWrapperWorld.cpp:
      (WebCore):
      (WebCore::DOMWrapperWorld::createUninitializedWorld):
      (WebCore::DOMWrapperWorld::createMainWorld):
      (WebCore::mainThreadNormalWorld):
      (WebCore::isolatedWorldMap):
      (WebCore::DOMWrapperWorld::deallocate):
      (WebCore::DOMWrapperWorld::getOrCreateIsolatedWorld):
      * bindings/v8/DOMWrapperWorld.h:
      (DOMWrapperWorld):
      (WebCore::DOMWrapperWorld::isolatedWorldsExist):
      (WebCore::DOMWrapperWorld::isMainWorld):
      (WebCore::DOMWrapperWorld::worldId):
      (WebCore::DOMWrapperWorld::extensionGroup):
      (WebCore::DOMWrapperWorld::domDataStore):
      (WebCore::DOMWrapperWorld::deref):
      (WebCore::DOMWrapperWorld::DOMWrapperWorld):
      * bindings/v8/IsolatedWorld.cpp: Removed.
      * bindings/v8/IsolatedWorld.h: Removed.
      * bindings/v8/ScriptController.cpp:
      (WebCore::ScriptController::evaluateInIsolatedWorld):
      * bindings/v8/V8DOMMap.cpp:
      (WebCore::DOMDataStoreHandle::DOMDataStoreHandle):
      (WebCore::DOMDataStoreHandle::~DOMDataStoreHandle):
      * bindings/v8/V8DOMMap.h:
      (DOMDataStoreHandle):
      * bindings/v8/V8DOMWrapper.h:
      (WebCore::V8DOMWrapper::getCachedWrapper):
      * bindings/v8/V8IsolatedContext.cpp:
      (WebCore::V8IsolatedContext::V8IsolatedContext):
      (WebCore::V8IsolatedContext::destroy):
      * bindings/v8/V8IsolatedContext.h:
      (V8IsolatedContext):
      (WebCore::V8IsolatedContext::getEntered):
      (WebCore::V8IsolatedContext::world):
      * bindings/v8/V8PerIsolateData.h:
      (WebCore::V8PerIsolateData::registerDOMDataStore):
      (WebCore::V8PerIsolateData::unregisterDOMDataStore):
      
      Source/WebKit/chromium:
      
      Remove IsolatedWorld class as it was 1:1 with DOMWrapperWorld.
      
      * src/WebViewImpl.cpp:
      (WebKit::WebView::addUserScript):
      (WebKit::WebView::addUserStyleSheet):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126566 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ddabd8f
  7. 22 Aug, 2012 5 commits
    • jamesr@google.com's avatar
      [chromium] Change WebLayer from a concrete type to a pure virtual interface · acd2676e
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=94174
      
      Reviewed by Adrienne Walker.
      
      Source/Platform:
      
      This changes WebLayer from a value type to a pure virtual interface and changes Web*Layers from subtypes to
      standalone types that have a WebLayer. This better isolates the implementation from the interface and, since
      it's not possible to re-wrap an existing layer, makes cleanup explicit instead of requiring the caller to
      invoke special cleanup methods before shutdown.
      
      * chromium/public/WebContentLayer.h:
      (WebContentLayer):
      * chromium/public/WebExternalTextureLayer.h:
      (WebExternalTextureLayer):
      * chromium/public/WebIOSurfaceLayer.h:
      (WebIOSurfaceLayer):
      * chromium/public/WebImageLayer.h:
      (WebImageLayer):
      * chromium/public/WebLayer.h:
      (WebKit):
      (WebLayer):
      (WebKit::WebLayer::~WebLayer):
      * chromium/public/WebScrollableLayer.h: Removed.
      * chromium/public/WebScrollbarLayer.h:
      (WebScrollbarLayer):
      * chromium/public/WebSolidColorLayer.h:
      (WebKit):
      (WebSolidColorLayer):
      (WebKit::WebSolidColorLayer::~WebSolidColorLayer):
      * chromium/public/WebVideoLayer.h:
      (WebVideoLayer):
      
      Source/WebCore:
      
      This updates WebCore code for the WebLayer interface changes. Classes that have ownership of specific layer
      types (such as DrawingBufferChromium, Canvas2DLayerBridge and ScrollingCoordinatorChromium) hold ownership
      of a specific type and a pointer to the WebLayer to GraphicsLayerChromium to be included in the final layer
      tree. GraphicsLayerChromium holds a WebContentLayer and (optionally) a WebImageLayer and WebLayer (for
      m_transformLayer) and assembles the final layer tree.
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      (WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
      (ScrollingCoordinatorPrivate):
      (WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::scrollLayer):
      (WebCore::scrollableLayerForGraphicsLayer):
      (WebCore):
      (WebCore::createScrollbarLayer):
      (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::setScrollLayer):
      (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
      (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
      (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
      (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
      (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::prepareForDraw):
      (WebCore::Canvas2DLayerBridge::layer):
      (WebCore::Canvas2DLayerBridge::contextAcquired):
      * platform/graphics/chromium/Canvas2DLayerBridge.h:
      (Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::layer):
      (DrawingBufferPrivate):
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::willBeDestroyed):
      (WebCore::GraphicsLayerChromium::updateNames):
      (WebCore::GraphicsLayerChromium::removeFromParent):
      (WebCore::GraphicsLayerChromium::setSize):
      (WebCore::GraphicsLayerChromium::clearBackgroundColor):
      (WebCore::GraphicsLayerChromium::setContentsOpaque):
      (WebCore::GraphicsLayerChromium::setFilters):
      (WebCore::GraphicsLayerChromium::setBackgroundFilters):
      (WebCore::GraphicsLayerChromium::setMaskLayer):
      (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
      (WebCore::GraphicsLayerChromium::setOpacity):
      (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
      (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
      (WebCore::GraphicsLayerChromium::setContentsToImage):
      (WebCore::GraphicsLayerChromium::setContentsToCanvas):
      (WebCore):
      (WebCore::GraphicsLayerChromium::setContentsToMedia):
      (WebCore::GraphicsLayerChromium::setContentsTo):
      (WebCore::GraphicsLayerChromium::addAnimation):
      (WebCore::GraphicsLayerChromium::pauseAnimation):
      (WebCore::GraphicsLayerChromium::removeAnimation):
      (WebCore::GraphicsLayerChromium::suspendAnimations):
      (WebCore::GraphicsLayerChromium::resumeAnimations):
      (WebCore::GraphicsLayerChromium::platformLayer):
      (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
      (WebCore::GraphicsLayerChromium::setDebugBorder):
      (WebCore::GraphicsLayerChromium::updateChildList):
      (WebCore::GraphicsLayerChromium::updateLayerPosition):
      (WebCore::GraphicsLayerChromium::updateLayerSize):
      (WebCore::GraphicsLayerChromium::updateAnchorPoint):
      (WebCore::GraphicsLayerChromium::updateTransform):
      (WebCore::GraphicsLayerChromium::updateChildrenTransform):
      (WebCore::GraphicsLayerChromium::updateMasksToBounds):
      (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
      (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
      (WebCore::GraphicsLayerChromium::updateContentsRect):
      (WebCore::GraphicsLayerChromium::updateContentsScale):
      (WebCore::GraphicsLayerChromium::setupContentsLayer):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::hasContentsLayer):
      (WebCore::GraphicsLayerChromium::contentLayer):
      (WebCore::GraphicsLayerChromium::contentsLayer):
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::rootLayer):
      * platform/graphics/chromium/LayerChromium.h:
      
      Source/WebKit/chromium:
      
      This updates the implementation of the Web*Layer family to the new design and updates callers in WebViewImpl /
      NonCompositedContentHost / LinkHighlight.
      
      * WebKit.gypi:
      * src/LinkHighlight.cpp:
      (WebKit::LinkHighlight::LinkHighlight):
      (WebKit::LinkHighlight::contentLayer):
      (WebKit::LinkHighlight::clipLayer):
      (WebKit::LinkHighlight::releaseResources):
      (WebKit::LinkHighlight::computeHighlightLayerPathAndPosition):
      (WebKit::LinkHighlight::startHighlightAnimation):
      (WebKit::LinkHighlight::updateGeometry):
      * src/LinkHighlight.h:
      (LinkHighlight):
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      (WebKit::NonCompositedContentHost::setScrollLayer):
      (WebKit::NonCompositedContentHost::setViewport):
      (WebKit::NonCompositedContentHost::scrollLayer):
      * src/NonCompositedContentHost.h:
      * src/WebContentLayer.cpp: Removed.
      * src/WebContentLayerImpl.cpp:
      (WebKit::WebContentLayer::create):
      (WebKit::WebContentLayerImpl::WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::~WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::layer):
      (WebKit):
      (WebKit::WebContentLayerImpl::setDoubleSided):
      (WebKit::WebContentLayerImpl::setContentsScale):
      (WebKit::WebContentLayerImpl::setUseLCDText):
      (WebKit::WebContentLayerImpl::setDrawCheckerboardForMissingTiles):
      (WebKit::WebContentLayerImpl::paintContents):
      * src/WebContentLayerImpl.h:
      (WebContentLayerImpl):
      * src/WebExternalTextureLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebExternalTextureLayer.cpp.
      (WebKit):
      (WebKit::WebExternalTextureLayer::create):
      (WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::layer):
      (WebKit::WebExternalTextureLayerImpl::setTextureId):
      (WebKit::WebExternalTextureLayerImpl::setFlipped):
      (WebKit::WebExternalTextureLayerImpl::setUVRect):
      (WebKit::WebExternalTextureLayerImpl::setOpaque):
      (WebKit::WebExternalTextureLayerImpl::setPremultipliedAlpha):
      (WebKit::WebExternalTextureLayerImpl::willModifyTexture):
      (WebKit::WebExternalTextureLayerImpl::setRateLimitContext):
      (WebTextureUpdaterImpl):
      (WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
      (WebKit::WebExternalTextureLayerImpl::prepareTexture):
      (WebKit::WebExternalTextureLayerImpl::context):
      * src/WebExternalTextureLayerImpl.h: Copied from Source/Platform/chromium/public/WebVideoLayer.h.
      (WebKit):
      (WebExternalTextureLayerImpl):
      * src/WebIOSurfaceLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebIOSurfaceLayer.cpp.
      (WebKit):
      (WebKit::WebIOSurfaceLayer::create):
      (WebKit::WebIOSurfaceLayerImpl::WebIOSurfaceLayerImpl):
      (WebKit::WebIOSurfaceLayerImpl::~WebIOSurfaceLayerImpl):
      (WebKit::WebIOSurfaceLayerImpl::setIOSurfaceProperties):
      (WebKit::WebIOSurfaceLayerImpl::layer):
      * src/WebIOSurfaceLayerImpl.h: Copied from Source/Platform/chromium/public/WebImageLayer.h.
      (WebCore):
      (WebKit):
      (WebIOSurfaceLayerImpl):
      * src/WebImageLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebSolidColorLayer.cpp.
      (WebKit):
      (WebKit::WebImageLayer::create):
      (WebKit::WebImageLayerImpl::WebImageLayerImpl):
      (WebKit::WebImageLayerImpl::~WebImageLayerImpl):
      (WebKit::WebImageLayerImpl::layer):
      (WebKit::WebImageLayerImpl::setBitmap):
      * src/WebImageLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebImageLayer.cpp.
      (WebCore):
      (WebKit):
      (WebImageLayerImpl):
      * src/WebLayer.cpp: Removed.
      * src/WebLayerImpl.cpp:
      (WebKit::WebLayer::create):
      (WebKit::WebLayerImpl::WebLayerImpl):
      (WebKit::WebLayerImpl::~WebLayerImpl):
      (WebKit):
      (WebKit::WebLayerImpl::id):
      (WebKit::WebLayerImpl::invalidateRect):
      (WebKit::WebLayerImpl::invalidate):
      (WebKit::WebLayerImpl::addChild):
      (WebKit::WebLayerImpl::insertChild):
      (WebKit::WebLayerImpl::replaceChild):
      (WebKit::WebLayerImpl::setChildren):
      (WebKit::WebLayerImpl::removeFromParent):
      (WebKit::WebLayerImpl::removeAllChildren):
      (WebKit::WebLayerImpl::setAnchorPoint):
      (WebKit::WebLayerImpl::anchorPoint):
      (WebKit::WebLayerImpl::setAnchorPointZ):
      (WebKit::WebLayerImpl::anchorPointZ):
      (WebKit::WebLayerImpl::setBounds):
      (WebKit::WebLayerImpl::bounds):
      (WebKit::WebLayerImpl::setMasksToBounds):
      (WebKit::WebLayerImpl::masksToBounds):
      (WebKit::WebLayerImpl::setMaskLayer):
      (WebKit::WebLayerImpl::setReplicaLayer):
      (WebKit::WebLayerImpl::setOpacity):
      (WebKit::WebLayerImpl::opacity):
      (WebKit::WebLayerImpl::setOpaque):
      (WebKit::WebLayerImpl::opaque):
      (WebKit::WebLayerImpl::setPosition):
      (WebKit::WebLayerImpl::position):
      (WebKit::WebLayerImpl::setSublayerTransform):
      (WebKit::WebLayerImpl::sublayerTransform):
      (WebKit::WebLayerImpl::setTransform):
      (WebKit::WebLayerImpl::transform):
      (WebKit::WebLayerImpl::setDrawsContent):
      (WebKit::WebLayerImpl::drawsContent):
      (WebKit::WebLayerImpl::setPreserves3D):
      (WebKit::WebLayerImpl::setUseParentBackfaceVisibility):
      (WebKit::WebLayerImpl::setBackgroundColor):
      (WebKit::WebLayerImpl::setFilters):
      (WebKit::WebLayerImpl::setBackgroundFilters):
      (WebKit::WebLayerImpl::setDebugBorderColor):
      (WebKit::WebLayerImpl::setDebugBorderWidth):
      (WebKit::WebLayerImpl::setDebugName):
      (WebKit::WebLayerImpl::setAnimationDelegate):
      (WebKit::WebLayerImpl::addAnimation):
      (WebKit::WebLayerImpl::removeAnimation):
      (WebKit::WebLayerImpl::pauseAnimation):
      (WebKit::WebLayerImpl::suspendAnimations):
      (WebKit::WebLayerImpl::resumeAnimations):
      (WebKit::WebLayerImpl::hasActiveAnimation):
      (WebKit::WebLayerImpl::transferAnimationsTo):
      (WebKit::WebLayerImpl::setForceRenderSurface):
      (WebKit::WebLayerImpl::setScrollPosition):
      (WebKit::WebLayerImpl::setScrollable):
      (WebKit::WebLayerImpl::setHaveWheelEventHandlers):
      (WebKit::WebLayerImpl::setShouldScrollOnMainThread):
      (WebKit::WebLayerImpl::setNonFastScrollableRegion):
      (WebKit::WebLayerImpl::setIsContainerForFixedPositionLayers):
      (WebKit::WebLayerImpl::setFixedToContainerLayer):
      (WebKit::WebLayerImpl::layer):
      * src/WebLayerImpl.h:
      (WebCore):
      (WebLayerImpl):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::setRootLayer):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeViewImpl::create):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::readyStateChanged):
      (WebKit::WebMediaPlayerClientImpl::repaint):
      (WebKit::WebMediaPlayerClientImpl::setOpaque):
      (WebKit::WebMediaPlayerClientImpl::platformLayer):
      (WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::setBackingTextureId):
      (WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
      (WebKit::WebPluginContainerImpl::commitBackingTexture):
      (WebKit::WebPluginContainerImpl::setOpaque):
      (WebKit::WebPluginContainerImpl::platformLayer):
      * src/WebPluginContainerImpl.h:
      (WebPluginContainerImpl):
      * src/WebScrollableLayer.cpp: Removed.
      * src/WebScrollbarLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarLayer.cpp.
      (WebKit):
      (WebKit::WebScrollbarLayer::create):
      (WebKit::WebScrollbarLayerImpl::WebScrollbarLayerImpl):
      (WebKit::WebScrollbarLayerImpl::~WebScrollbarLayerImpl):
      (WebKit::WebScrollbarLayerImpl::layer):
      (WebKit::WebScrollbarLayerImpl::setScrollLayer):
      * src/WebScrollbarLayerImpl.h: Copied from Source/WebKit/chromium/src/WebSolidColorLayerImpl.h.
      (WebCore):
      (WebKit):
      (WebScrollbarLayerImpl):
      * src/WebSolidColorLayerImpl.cpp:
      (WebKit::WebSolidColorLayer::create):
      (WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
      (WebKit::WebSolidColorLayerImpl::layer):
      (WebKit):
      (WebKit::WebSolidColorLayerImpl::setBackgroundColor):
      * src/WebSolidColorLayerImpl.h:
      (WebCore):
      (WebKit):
      (WebSolidColorLayerImpl):
      * src/WebVideoLayerImpl.cpp: Copied from Source/WebKit/chromium/src/WebVideoLayer.cpp.
      (WebKit):
      (WebKit::WebVideoLayer::create):
      (WebKit::WebVideoLayerImpl::WebVideoLayerImpl):
      (WebKit::WebVideoLayerImpl::~WebVideoLayerImpl):
      (WebKit::WebVideoLayerImpl::layer):
      (WebKit::WebVideoLayerImpl::active):
      * src/WebVideoLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebVideoLayer.cpp.
      (WebCore):
      (WebKit):
      (WebVideoLayerImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::WebViewImpl):
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit):
      * src/WebViewImpl.h:
      * tests/ImageLayerChromiumTest.cpp:
      (WebCore::TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126378 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      acd2676e
    • wjmaclean@chromium.org's avatar
      [chromium] Add touch link highlight animation layers. · 78b613c7
      wjmaclean@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=84487
      
      Reviewed by James Robinson.
      
      Adds support for creating composited touch link highlights in renderer thread. Clipping not yet
      implemented for non-composited frames/overflow divs, but scrolling and layout changes are supported.
      Transform support currently limited to translation.
      
      Source/WebCore:
      
      Unit tests for LinkHighlight revised.
      
      Tests: platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scroll-clip.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-rotated.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaledX.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaledY.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html
      
      * WebCore.gypi:
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::willBeDestroyed): Adds notification to LinkHighlight when layer goes away.
      (WebCore::GraphicsLayerChromium::updateNames): Now sets debug name for LinkHighlight layer.
      (WebCore::GraphicsLayerChromium::setSize): Invalidates LinkHighlight if present.
      (WebCore::GraphicsLayerChromium::setNeedsDisplay): Invalidates LinkHighlight if present.
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect): Invalidates LinkHighlight if present.
      (WebCore::GraphicsLayerChromium::setLinkHighlight): Registers LinkHighlightClient* with GraphicsLayerChromium.
      (WebCore::GraphicsLayerChromium::updateChildList): Now adds LinkHighlight WebLayer if highlight active.
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable): Invalidates LinkHighlight if present.
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore):
      (LinkHighlightClient): Abstract interface seen by GraphicsLayerChromium.
      (WebCore::LinkHighlightClient::~LinkHighlightClient):
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::linkHighlight):
      * platform/graphics/chromium/LinkHighlight.cpp: Removed.
      
      Source/WebKit/chromium:
      
      Unit tests for LinkHighlight revised.
      
      * WebKit.gyp:
      * src/LinkHighlight.cpp: Added.
      (WebKit):
      (WebKit::LinkHighlight::create):
      (WebKit::LinkHighlight::LinkHighlight):
      (WebKit::LinkHighlight::~LinkHighlight):
      (WebKit::LinkHighlight::contentLayer): Accessor for layer containing highlight.
      (WebKit::LinkHighlight::clipLayer): Accessor for layer that provides clipping for highlight.
      (WebKit::LinkHighlight::releaseResources): Releases Node* for highlight target, clears client/delegate pointers.
      (WebKit::LinkHighlight::computeEnclosingCompositingLayer): Determines which GraphicsLayerChromium to attach highlight to.
      (WebKit::LinkHighlight::computeHighlightLayerPathAndPosition): Determines coordinates of highlight in owning GraphicsLayerChromium's coordinates.
      (WebKit::LinkHighlight::paintContents): If highlight active, paints highlight.
      (WebKit::LinkHighlight::startHighlightAnimation): Called to start highlight animation.
      (WebKit::LinkHighlight::clearGraphicsLayerLinkHighlightPointer): Removes this LinkHighlight's pointer from owning GraphicsLayerChromium.
      (WebKit::LinkHighlight::notifyAnimationStarted): Implements WebAnimationDelegate.
      (WebKit::LinkHighlight::notifyAnimationFinished): Implements WebAnimationDelegate, releases resources when animation completes.
      (WebKit::LinkHighlight::updateGeometry): Invokes computation of which GraphicsLayerChromium to attach to, and highlight shape & position.
          Computations proceed only if preceded by call to invalidate().
      (WebKit::LinkHighlight::clearCurrentGraphicsLayer): Handles notification that current GraphicsLayerChromium* is no longer valid.
      (WebKit::LinkHighlight::invalidate): Sets flag to allow geometry update on next call from WebViewImpl::layout().
      (WebKit::LinkHighlight::layer): Exports WebLayer* for use in GraphicsLayerChromium.
      * src/LinkHighlight.h: Renamed from Source/WebCore/platform/graphics/chromium/LinkHighlight.h.
      (WebCore):
      (WebKit):
      (LinkHighlight):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::handleGestureEvent):
      (WebKit):
      (WebKit::highlightConditions):
      (WebKit::WebViewImpl::bestTouchLinkNode): Find highlight target node for touch event location.
      (WebKit::WebViewImpl::enableTouchHighlight): Invokes highlight for node at current touch event location.
      (WebKit::WebViewImpl::layout): Adds call to LinkHighlight::updateGeometry().
      * src/WebViewImpl.h:
      (WebKit):
      (WebViewImpl):
      (WebKit::WebViewImpl::linkHighlight):
      * tests/LinkHighlightTest.cpp:
      (WebCore):
      (WebCore::TEST):
      * tests/data/test_touch_link_highlight.html: Added.
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-frame-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-frame-noncomposited.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-nested-frame-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-nested-frame-noncomposited.html: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.txt: Added.
      * platform/chromium/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126345 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      78b613c7
    • abarth@webkit.org's avatar
      WebWidget should be able to paint into a zoomed canvas without aliasing · 3519c51c
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=92043
      
      Reviewed by James Robinson.
      
      If accelerated compositing is enabled, WebWidget::paint reads back from
      the compositor rather than re-painting the widget. That approach works
      well if the canvas we're rendering into is at a similar resolution to
      the pixels in the compositor, but if the canvas has been scaled (e.g.,
      to help the user disambiguate links), then reading back from the
      compositor will cause aliasing artifacts.
      
      This patch adds an option to paint to let the embedder request a
      software re-rendering of the widget to avoid these aliasing artifacts.
      
      * public/WebWidget.h:
      (WebKit::WebWidget::paint):
      * src/WebPagePopupImpl.cpp:
      (WebKit::WebPagePopupImpl::paint):
      * src/WebPagePopupImpl.h:
      (WebPagePopupImpl):
      * src/WebPopupMenuImpl.cpp:
      (WebKit::WebPopupMenuImpl::paint):
      * src/WebPopupMenuImpl.h:
      * src/WebViewImpl.cpp:
      (WebKit::canvasBackgroundForTransparencey):
      (WebKit):
      (WebKit::WebViewImpl::paint):
      * src/WebViewImpl.h:
      (WebViewImpl):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126344 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3519c51c
    • kbr@google.com's avatar
      Unreviewed, rolling out r126319. · ad20abb5
      kbr@google.com authored
      http://trac.webkit.org/changeset/126319
      https://bugs.webkit.org/show_bug.cgi?id=84487
      
      Broke Chromium Mac build
      
      Source/WebCore:
      
      * WebCore.gypi:
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::willBeDestroyed):
      (WebCore::GraphicsLayerChromium::updateNames):
      (WebCore::GraphicsLayerChromium::setSize):
      (WebCore::GraphicsLayerChromium::setNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
      (WebCore::GraphicsLayerChromium::addLinkHighlight):
      (WebCore::GraphicsLayerChromium::didFinishLinkHighlight):
      (WebCore):
      (WebCore::GraphicsLayerChromium::updateChildList):
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore):
      (GraphicsLayerChromium):
      * platform/graphics/chromium/LinkHighlight.cpp: Added.
      (WebCore):
      (WebCore::LinkHighlight::create):
      (WebCore::LinkHighlight::LinkHighlight):
      (WebCore::LinkHighlight::~LinkHighlight):
      (WebCore::LinkHighlight::contentLayer):
      (WebCore::LinkHighlight::paintContents):
      (WebCore::LinkHighlight::notifyAnimationStarted):
      (WebCore::LinkHighlight::notifyAnimationFinished):
      * platform/graphics/chromium/LinkHighlight.h: Renamed from Source/WebKit/chromium/src/LinkHighlight.h.
      (WebCore):
      (LinkHighlight):
      
      Source/WebKit/chromium:
      
      * WebKit.gyp:
      * src/LinkHighlight.cpp: Removed.
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::handleGestureEvent):
      (WebKit::WebViewImpl::computeScaleAndScrollForHitRect):
      (WebKit::WebViewImpl::layout):
      * src/WebViewImpl.h:
      (WebKit):
      (WebViewImpl):
      * tests/LinkHighlightTest.cpp:
      * tests/data/test_touch_link_highlight.html: Removed.
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html: Removed.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html: Removed.
      * platform/chromium-linux/compositing/gestures/resources/1-frame-composited.html: Removed.
      * platform/chromium-linux/compositing/gestures/resources/1-frame-noncomposited.html: Removed.
      * platform/chromium-linux/compositing/gestures/resources/1-nested-frame-composited.html: Removed.
      * platform/chromium-linux/compositing/gestures/resources/1-nested-frame-noncomposited.html: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.txt: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.png: Removed.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.txt: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126323 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ad20abb5
    • wjmaclean@chromium.org's avatar
      [chromium] Add touch link highlight animation layers. · 4e3006d3
      wjmaclean@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=84487
      
      Reviewed by James Robinson.
      
      Adds support for creating composited touch link highlights in renderer thread. Clipping not yet
      implemented for non-composited frames/overflow divs, but scrolling and layout changes are supported.
      Transform support currently limited to translation.
      
      Source/WebCore:
      
      Unit tests for LinkHighlight revised.
      
      Tests: platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scroll-clip.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-clipped.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-rotated.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaledX.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-scaledY.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html
             platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html
      
      * WebCore.gypi:
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::willBeDestroyed): Adds notification to LinkHighlight when layer goes away.
      (WebCore::GraphicsLayerChromium::updateNames): Now sets debug name for LinkHighlight layer.
      (WebCore::GraphicsLayerChromium::setSize): Invalidates LinkHighlight if present.
      (WebCore::GraphicsLayerChromium::setNeedsDisplay): Invalidates LinkHighlight if present.
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect): Invalidates LinkHighlight if present.
      (WebCore::GraphicsLayerChromium::setLinkHighlight): Registers LinkHighlightClient* with GraphicsLayerChromium.
      (WebCore::GraphicsLayerChromium::updateChildList): Now adds LinkHighlight WebLayer if highlight active.
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable): Invalidates LinkHighlight if present.
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore):
      (LinkHighlightClient): Abstract interface seen by GraphicsLayerChromium.
      (WebCore::LinkHighlightClient::~LinkHighlightClient):
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::linkHighlight):
      * platform/graphics/chromium/LinkHighlight.cpp: Removed.
      
      Source/WebKit/chromium:
      
      Unit tests for LinkHighlight revised.
      
      * WebKit.gyp:
      * src/LinkHighlight.cpp: Added.
      (WebKit):
      (WebKit::LinkHighlight::create):
      (WebKit::LinkHighlight::LinkHighlight):
      (WebKit::LinkHighlight::~LinkHighlight):
      (WebKit::LinkHighlight::contentLayer): Accessor for layer containing highlight.
      (WebKit::LinkHighlight::clipLayer): Accessor for layer that provides clipping for highlight.
      (WebKit::LinkHighlight::releaseResources): Releases Node* for highlight target, clears client/delegate pointers.
      (WebKit::LinkHighlight::computeEnclosingCompositingLayer): Determines which GraphicsLayerChromium to attach highlight to.
      (WebKit::LinkHighlight::computeHighlightLayerPathAndPosition): Determines coordinates of highlight in owning GraphicsLayerChromium's coordinates.
      (WebKit::LinkHighlight::paintContents): If highlight active, paints highlight.
      (WebKit::LinkHighlight::startHighlightAnimation): Called to start highlight animation.
      (WebKit::LinkHighlight::clearGraphicsLayerLinkHighlightPointer): Removes this LinkHighlight's pointer from owning GraphicsLayerChromium.
      (WebKit::LinkHighlight::notifyAnimationStarted): Implements WebAnimationDelegate.
      (WebKit::LinkHighlight::notifyAnimationFinished): Implements WebAnimationDelegate, releases resources when animation completes.
      (WebKit::LinkHighlight::updateGeometry): Invokes computation of which GraphicsLayerChromium to attach to, and highlight shape & position.
          Computations proceed only if preceded by call to invalidate().
      (WebKit::LinkHighlight::clearCurrentGraphicsLayer): Handles notification that current GraphicsLayerChromium* is no longer valid.
      (WebKit::LinkHighlight::invalidate): Sets flag to allow geometry update on next call from WebViewImpl::layout().
      (WebKit::LinkHighlight::layer): Exports WebLayer* for use in GraphicsLayerChromium.
      * src/LinkHighlight.h: Renamed from Source/WebCore/platform/graphics/chromium/LinkHighlight.h.
      (WebCore):
      (WebKit):
      (LinkHighlight):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::handleGestureEvent):
      (WebKit):
      (WebKit::highlightConditions):
      (WebKit::WebViewImpl::bestTouchLinkNode): Find highlight target node for touch event location.
      (WebKit::WebViewImpl::enableTouchHighlight): Invokes highlight for node at current touch event location.
      (WebKit::WebViewImpl::layout): Adds call to LinkHighlight::updateGeometry().
      * src/WebViewImpl.h:
      (WebKit):
      (WebViewImpl):
      (WebKit::WebViewImpl::linkHighlight):
      * tests/LinkHighlightTest.cpp:
      (WebCore):
      (WebCore::TEST):
      * tests/data/test_touch_link_highlight.html: Added.
      
      LayoutTests:
      
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll.html: Added.
      * platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-frame-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-frame-noncomposited.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-nested-frame-composited.html: Added.
      * platform/chromium-linux/compositing/gestures/resources/1-nested-frame-noncomposited.html: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-clipped-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-composited-scrolled-late-noncomposite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-iframe-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scroll-clip-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-composited-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-2-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-layout-change-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-1-overflow-div-scrolled-late-noncomposite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-composited-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-inner-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-iframe-scrolled-outer-late-composite-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-inner-scroll-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-composited-outer-scroll-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-inner-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-2-overflow-div-scrolled-outer-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-expected.txt: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.png: Added.
      * platform/chromium-linux/platform/chromium-linux/compositing/gestures/gesture-tapHighlight-simple-window-scroll-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126319 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e3006d3
  8. 21 Aug, 2012 4 commits
    • commit-queue@webkit.org's avatar
      [chromium] Add WebView methods setCompositionFromExistingText and extendSelectionAndDelete. · c2377c16
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=93724
      
      Patch by Oli Lan <olilan@chromium.org> on 2012-08-21
      Reviewed by Ryosuke Niwa.
      
      This adds two new methods to WebViewImpl.
      
      1) setCompositionFromExistingText creates a new composition from the existing text
      in the currently focused input field. The new composition is between the two offsets
      provided, relative to the rootEditableElement. The current selection is left unchanged.
      
      2) extendSelectionAndDelete extends the selection by the specified number of characters
      before and after, and then deletes the selection. If the selection is just a caret, the effect
      is to delete the specified number of characters before and after the current editing point.
      
      These methods will be used e.g. by the Android port to implement IME functionality.
      
      New tests WebViewTest.ExtendSelectionAndDelete and WebViewTest.SetCompositionFromExistingText
      test the two new methods.
      
      * public/WebView.h:
      (WebView):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::setComposingRegion):
      (WebKit):
      (WebKit::extendSelectionAndDelete):
      * src/WebViewImpl.h:
      (WebViewImpl):
      * tests/WebViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126200 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2377c16
    • jamesr@google.com's avatar
      Unreviewed, rolling out r126170. · b584191c
      jamesr@google.com authored
      http://trac.webkit.org/changeset/126170
      https://bugs.webkit.org/show_bug.cgi?id=94614
      
      I spoke too soon
      
      Source/Platform:
      
      * chromium/public/WebContentLayer.h:
      (WebCore):
      (WebKit):
      (WebContentLayer):
      (WebKit::WebContentLayer::WebContentLayer):
      (WebKit::WebContentLayer::operator=):
      * chromium/public/WebExternalTextureLayer.h:
      (WebCore):
      (WebExternalTextureLayer):
      (WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
      (WebKit::WebExternalTextureLayer::~WebExternalTextureLayer):
      * chromium/public/WebIOSurfaceLayer.h:
      (WebCore):
      (WebIOSurfaceLayer):
      (WebKit::WebIOSurfaceLayer::WebIOSurfaceLayer):
      * chromium/public/WebImageLayer.h:
      (WebCore):
      (WebImageLayer):
      (WebKit::WebImageLayer::WebImageLayer):
      * chromium/public/WebLayer.h:
      (WebKit):
      (WebLayer):
      (WebKit::WebLayer::WebLayer):
      (WebKit::WebLayer::~WebLayer):
      (WebKit::WebLayer::operator=):
      (WebKit::WebLayer::isNull):
      (WebKit::WebLayer::to):
      (WebKit::WebLayer::toConst):
      (WebKit::WebLayer::unwrap):
      (WebKit::WebLayer::constUnwrap):
      (WebKit::operator==):
      (WebKit::operator!=):
      * chromium/public/WebScrollableLayer.h: Copied from Source/Platform/chromium/public/WebScrollbarLayer.h.
      (WebKit):
      (WebScrollableLayer):
      (WebKit::WebScrollableLayer::WebScrollableLayer):
      (WebKit::WebScrollableLayer::~WebScrollableLayer):
      (WebKit::WebScrollableLayer::operator=):
      * chromium/public/WebScrollbarLayer.h:
      (WebCore):
      (WebKit::WebScrollbarLayer::WebScrollbarLayer):
      (WebKit::WebScrollbarLayer::operator=):
      (WebScrollbarLayer):
      * chromium/public/WebSolidColorLayer.h:
      (WebKit):
      (WebSolidColorLayer):
      * chromium/public/WebVideoLayer.h:
      (WebCore):
      (WebVideoLayer):
      (WebKit::WebVideoLayer::WebVideoLayer):
      
      Source/WebCore:
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      (WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
      (WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::hasScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::scrollLayer):
      (ScrollingCoordinatorPrivate):
      (WebCore::createScrollbarLayer):
      (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::setScrollLayer):
      (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
      (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
      (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
      (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
      (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::prepareForDraw):
      (WebCore::Canvas2DLayerBridge::layer):
      (WebCore::Canvas2DLayerBridge::contextAcquired):
      * platform/graphics/chromium/Canvas2DLayerBridge.h:
      (Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::layer):
      (DrawingBufferPrivate):
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::willBeDestroyed):
      (WebCore):
      (WebCore::GraphicsLayerChromium::updateNames):
      (WebCore::GraphicsLayerChromium::removeFromParent):
      (WebCore::GraphicsLayerChromium::setSize):
      (WebCore::GraphicsLayerChromium::clearBackgroundColor):
      (WebCore::GraphicsLayerChromium::setContentsOpaque):
      (WebCore::GraphicsLayerChromium::setFilters):
      (WebCore::GraphicsLayerChromium::setBackgroundFilters):
      (WebCore::GraphicsLayerChromium::setMaskLayer):
      (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
      (WebCore::GraphicsLayerChromium::setOpacity):
      (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
      (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
      (WebCore::GraphicsLayerChromium::setContentsToImage):
      (WebCore::GraphicsLayerChromium::setContentsToCanvas):
      (WebCore::GraphicsLayerChromium::addAnimation):
      (WebCore::GraphicsLayerChromium::pauseAnimation):
      (WebCore::GraphicsLayerChromium::removeAnimation):
      (WebCore::GraphicsLayerChromium::suspendAnimations):
      (WebCore::GraphicsLayerChromium::resumeAnimations):
      (WebCore::GraphicsLayerChromium::addLinkHighlight):
      (WebCore::GraphicsLayerChromium::didFinishLinkHighlight):
      (WebCore::GraphicsLayerChromium::setContentsToMedia):
      (WebCore::GraphicsLayerChromium::primaryLayer):
      (WebCore::GraphicsLayerChromium::platformLayer):
      (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
      (WebCore::GraphicsLayerChromium::setDebugBorder):
      (WebCore::GraphicsLayerChromium::updateChildList):
      (WebCore::GraphicsLayerChromium::updateLayerPosition):
      (WebCore::GraphicsLayerChromium::updateLayerSize):
      (WebCore::GraphicsLayerChromium::updateAnchorPoint):
      (WebCore::GraphicsLayerChromium::updateTransform):
      (WebCore::GraphicsLayerChromium::updateChildrenTransform):
      (WebCore::GraphicsLayerChromium::updateMasksToBounds):
      (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
      (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
      (WebCore::GraphicsLayerChromium::updateContentsRect):
      (WebCore::GraphicsLayerChromium::updateContentsScale):
      (WebCore::GraphicsLayerChromium::setupContentsLayer):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore::GraphicsLayerChromium::hasContentsLayer):
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::contentsLayer):
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::rootLayer):
      * platform/graphics/chromium/LayerChromium.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gypi:
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      (WebKit::NonCompositedContentHost::setScrollLayer):
      (WebKit::NonCompositedContentHost::setViewport):
      (WebKit::NonCompositedContentHost::scrollLayer):
      * src/NonCompositedContentHost.h:
      * src/WebContentLayer.cpp: Renamed from Source/WebKit/chromium/src/WebVideoLayerImpl.cpp.
      (WebKit):
      (WebKit::WebContentLayer::create):
      (WebKit::WebContentLayer::clearClient):
      (WebKit::WebContentLayer::setDoubleSided):
      (WebKit::WebContentLayer::setContentsScale):
      (WebKit::WebContentLayer::setUseLCDText):
      (WebKit::WebContentLayer::setDrawCheckerboardForMissingTiles):
      (WebKit::WebContentLayer::WebContentLayer):
      (WebKit::WebContentLayer::operator=):
      (WebKit::WebContentLayer::operator PassRefPtr<ContentLayerChromium>):
      * src/WebContentLayerImpl.cpp:
      (WebKit::WebContentLayerImpl::create):
      (WebKit::WebContentLayerImpl::WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::~WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::paintContents):
      * src/WebContentLayerImpl.h:
      (WebContentLayerImpl):
      * src/WebExternalTextureLayer.cpp: Renamed from Source/WebKit/chromium/src/WebExternalTextureLayerImpl.cpp.
      (WebKit):
      (WebTextureUpdaterImpl):
      (WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
      (WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayer::create):
      (WebKit::WebExternalTextureLayer::clearClient):
      (WebKit::WebExternalTextureLayer::setTextureId):
      (WebKit::WebExternalTextureLayer::setFlipped):
      (WebKit::WebExternalTextureLayer::setUVRect):
      (WebKit::WebExternalTextureLayer::setOpaque):
      (WebKit::WebExternalTextureLayer::setPremultipliedAlpha):
      (WebKit::WebExternalTextureLayer::willModifyTexture):
      (WebKit::WebExternalTextureLayer::setRateLimitContext):
      (WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
      * src/WebExternalTextureLayerImpl.h: Removed.
      * src/WebIOSurfaceLayer.cpp: Renamed from Source/WebKit/chromium/src/WebIOSurfaceLayerImpl.cpp.
      (WebKit):
      (WebKit::WebIOSurfaceLayer::create):
      (WebKit::WebIOSurfaceLayer::setIOSurfaceProperties):
      (WebKit::WebIOSurfaceLayer::WebIOSurfaceLayer):
      * src/WebIOSurfaceLayerImpl.h: Removed.
      * src/WebImageLayer.cpp: Renamed from Source/WebKit/chromium/src/WebImageLayerImpl.h.
      (WebKit):
      (WebKit::WebImageLayer::create):
      (WebKit::WebImageLayer::WebImageLayer):
      (WebKit::WebImageLayer::setBitmap):
      * src/WebLayer.cpp: Added.
      (WebKit):
      (WebKit::WebLayer::create):
      (WebKit::WebLayer::reset):
      (WebKit::WebLayer::assign):
      (WebKit::WebLayer::equals):
      (WebKit::WebLayer::invalidateRect):
      (WebKit::WebLayer::invalidate):
      (WebKit::WebLayer::addChild):
      (WebKit::WebLayer::insertChild):
      (WebKit::WebLayer::replaceChild):
      (WebKit::WebLayer::setChildren):
      (WebKit::WebLayer::removeFromParent):
      (WebKit::WebLayer::removeAllChildren):
      (WebKit::WebLayer::setAnchorPoint):
      (WebKit::WebLayer::anchorPoint):
      (WebKit::WebLayer::setAnchorPointZ):
      (WebKit::WebLayer::anchorPointZ):
      (WebKit::WebLayer::setBounds):
      (WebKit::WebLayer::bounds):
      (WebKit::WebLayer::setMasksToBounds):
      (WebKit::WebLayer::masksToBounds):
      (WebKit::WebLayer::setMaskLayer):
      (WebKit::WebLayer::setReplicaLayer):
      (WebKit::WebLayer::setOpacity):
      (WebKit::WebLayer::opacity):
      (WebKit::WebLayer::setOpaque):
      (WebKit::WebLayer::opaque):
      (WebKit::WebLayer::setPosition):
      (WebKit::WebLayer::position):
      (WebKit::WebLayer::setSublayerTransform):
      (WebKit::WebLayer::sublayerTransform):
      (WebKit::WebLayer::setTransform):
      (WebKit::WebLayer::transform):
      (WebKit::WebLayer::setDrawsContent):
      (WebKit::WebLayer::drawsContent):
      (WebKit::WebLayer::setPreserves3D):
      (WebKit::WebLayer::setUseParentBackfaceVisibility):
      (WebKit::WebLayer::setBackgroundColor):
      (WebKit::WebLayer::setFilters):
      (WebKit::WebLayer::setBackgroundFilters):
      (WebKit::WebLayer::setDebugBorderColor):
      (WebKit::WebLayer::setDebugBorderWidth):
      (WebKit::WebLayer::setDebugName):
      (WebKit::WebLayer::setAnimationDelegate):
      (WebKit::WebLayer::addAnimation):
      (WebKit::WebLayer::removeAnimation):
      (WebKit::WebLayer::pauseAnimation):
      (WebKit::WebLayer::suspendAnimations):
      (WebKit::WebLayer::resumeAnimations):
      (WebKit::WebLayer::hasActiveAnimation):
      (WebKit::WebLayer::transferAnimationsTo):
      (WebKit::WebLayer::setForceRenderSurface):
      (WebKit::WebLayer::clearRenderSurface):
      (WebKit::WebLayer::WebLayer):
      (WebKit::WebLayer::operator=):
      (WebKit::WebLayer::operator PassRefPtr<LayerChromium>):
      * src/WebLayerImpl.cpp:
      (WebKit::WebLayerImpl::create):
      (WebKit::WebLayerImpl::WebLayerImpl):
      (WebKit::WebLayerImpl::~WebLayerImpl):
      * src/WebLayerImpl.h:
      (WebLayerImpl):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::setRootLayer):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeViewImpl::create):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::readyStateChanged):
      (WebKit::WebMediaPlayerClientImpl::repaint):
      (WebKit::WebMediaPlayerClientImpl::setOpaque):
      (WebKit::WebMediaPlayerClientImpl::platformLayer):
      (WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::setBackingTextureId):
      (WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
      (WebKit::WebPluginContainerImpl::commitBackingTexture):
      (WebKit::WebPluginContainerImpl::setOpaque):
      (WebKit::WebPluginContainerImpl::platformLayer):
      * src/WebPluginContainerImpl.h:
      (WebPluginContainerImpl):
      * src/WebScrollableLayer.cpp: Renamed from Source/WebKit/chromium/src/WebImageLayerImpl.cpp.
      (WebKit):
      (WebKit::WebScrollableLayer::setScrollPosition):
      (WebKit::WebScrollableLayer::setScrollable):
      (WebKit::WebScrollableLayer::setHaveWheelEventHandlers):
      (WebKit::WebScrollableLayer::setShouldScrollOnMainThread):
      (WebKit::WebScrollableLayer::setNonFastScrollableRegion):
      (WebKit::WebScrollableLayer::setIsContainerForFixedPositionLayers):
      (WebKit::WebScrollableLayer::setFixedToContainerLayer):
      * src/WebScrollbarLayer.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarLayerImpl.cpp.
      (WebKit):
      (WebKit::WebScrollbarLayer::setScrollLayer):
      (WebKit::WebScrollbarLayer::create):
      (WebKit::WebScrollbarLayer::WebScrollbarLayer):
      (WebKit::WebScrollbarLayer::operator=):
      (WebKit::WebScrollbarLayer::operator PassRefPtr<ScrollbarLayerChromium>):
      * src/WebScrollbarLayerImpl.h: Removed.
      * src/WebSolidColorLayer.cpp: Copied from Source/Platform/chromium/public/WebSolidColorLayer.h.
      (WebKit):
      (WebKit::WebSolidColorLayer::create):
      (WebKit::WebSolidColorLayer::WebSolidColorLayer):
      (WebKit::WebSolidColorLayer::setBackgroundColor):
      * src/WebSolidColorLayerImpl.cpp:
      (WebKit::WebSolidColorLayerImpl::create):
      (WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
      * src/WebSolidColorLayerImpl.h:
      (WebSolidColorLayerImpl):
      * src/WebVideoLayer.cpp: Renamed from Source/WebKit/chromium/src/WebVideoLayerImpl.h.
      (WebKit):
      (WebKit::WebVideoLayer::create):
      (WebKit::WebVideoLayer::WebVideoLayer):
      (WebKit::WebVideoLayer::active):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::WebViewImpl):
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit):
      * src/WebViewImpl.h:
      * tests/ImageLayerChromiumTest.cpp:
      (WebCore::TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b584191c
    • jamesr@google.com's avatar
      Unreviewed, rolling out r126169. · 75ee680c
      jamesr@google.com authored
      http://trac.webkit.org/changeset/126169
      https://bugs.webkit.org/show_bug.cgi?id=94614
      
      Crashes already fixed downstream
      
      Source/Platform:
      
      * chromium/public/WebContentLayer.h:
      (WebContentLayer):
      * chromium/public/WebExternalTextureLayer.h:
      (WebExternalTextureLayer):
      * chromium/public/WebIOSurfaceLayer.h:
      (WebIOSurfaceLayer):
      * chromium/public/WebImageLayer.h:
      (WebImageLayer):
      * chromium/public/WebLayer.h:
      (WebKit):
      (WebLayer):
      (WebKit::WebLayer::~WebLayer):
      * chromium/public/WebScrollableLayer.h: Removed.
      * chromium/public/WebScrollbarLayer.h:
      (WebScrollbarLayer):
      * chromium/public/WebSolidColorLayer.h:
      (WebKit):
      (WebSolidColorLayer):
      (WebKit::WebSolidColorLayer::~WebSolidColorLayer):
      * chromium/public/WebVideoLayer.h:
      (WebVideoLayer):
      
      Source/WebCore:
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      (WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
      (ScrollingCoordinatorPrivate):
      (WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::scrollLayer):
      (WebCore::scrollableLayerForGraphicsLayer):
      (WebCore):
      (WebCore::createScrollbarLayer):
      (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::setScrollLayer):
      (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
      (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
      (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
      (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
      (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::prepareForDraw):
      (WebCore::Canvas2DLayerBridge::layer):
      (WebCore::Canvas2DLayerBridge::contextAcquired):
      * platform/graphics/chromium/Canvas2DLayerBridge.h:
      (Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::layer):
      (DrawingBufferPrivate):
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::updateNames):
      (WebCore::GraphicsLayerChromium::removeFromParent):
      (WebCore::GraphicsLayerChromium::setSize):
      (WebCore::GraphicsLayerChromium::clearBackgroundColor):
      (WebCore::GraphicsLayerChromium::setContentsOpaque):
      (WebCore::GraphicsLayerChromium::setFilters):
      (WebCore::GraphicsLayerChromium::setBackgroundFilters):
      (WebCore::GraphicsLayerChromium::setMaskLayer):
      (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
      (WebCore::GraphicsLayerChromium::setOpacity):
      (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
      (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
      (WebCore::GraphicsLayerChromium::setContentsToImage):
      (WebCore::GraphicsLayerChromium::setContentsToCanvas):
      (WebCore):
      (WebCore::GraphicsLayerChromium::setContentsToMedia):
      (WebCore::GraphicsLayerChromium::setContentsTo):
      (WebCore::GraphicsLayerChromium::addAnimation):
      (WebCore::GraphicsLayerChromium::pauseAnimation):
      (WebCore::GraphicsLayerChromium::removeAnimation):
      (WebCore::GraphicsLayerChromium::suspendAnimations):
      (WebCore::GraphicsLayerChromium::resumeAnimations):
      (WebCore::GraphicsLayerChromium::addLinkHighlight):
      (WebCore::GraphicsLayerChromium::didFinishLinkHighlight):
      (WebCore::GraphicsLayerChromium::platformLayer):
      (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
      (WebCore::GraphicsLayerChromium::setDebugBorder):
      (WebCore::GraphicsLayerChromium::updateChildList):
      (WebCore::GraphicsLayerChromium::updateLayerPosition):
      (WebCore::GraphicsLayerChromium::updateLayerSize):
      (WebCore::GraphicsLayerChromium::updateAnchorPoint):
      (WebCore::GraphicsLayerChromium::updateTransform):
      (WebCore::GraphicsLayerChromium::updateChildrenTransform):
      (WebCore::GraphicsLayerChromium::updateMasksToBounds):
      (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
      (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
      (WebCore::GraphicsLayerChromium::updateContentsRect):
      (WebCore::GraphicsLayerChromium::updateContentsScale):
      (WebCore::GraphicsLayerChromium::setupContentsLayer):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore::GraphicsLayerChromium::hasContentsLayer):
      (WebCore::GraphicsLayerChromium::contentLayer):
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::contentsLayer):
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::rootLayer):
      * platform/graphics/chromium/LayerChromium.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gypi:
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      (WebKit::NonCompositedContentHost::setScrollLayer):
      (WebKit::NonCompositedContentHost::setViewport):
      (WebKit::NonCompositedContentHost::scrollLayer):
      * src/NonCompositedContentHost.h:
      * src/WebContentLayer.cpp: Removed.
      * src/WebContentLayerImpl.cpp:
      (WebKit::WebContentLayer::create):
      (WebKit::WebContentLayerImpl::WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::~WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::layer):
      (WebKit):
      (WebKit::WebContentLayerImpl::setDoubleSided):
      (WebKit::WebContentLayerImpl::setContentsScale):
      (WebKit::WebContentLayerImpl::setUseLCDText):
      (WebKit::WebContentLayerImpl::setDrawCheckerboardForMissingTiles):
      (WebKit::WebContentLayerImpl::paintContents):
      * src/WebContentLayerImpl.h:
      (WebContentLayerImpl):
      * src/WebExternalTextureLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebExternalTextureLayer.cpp.
      (WebKit):
      (WebKit::WebExternalTextureLayer::create):
      (WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::layer):
      (WebKit::WebExternalTextureLayerImpl::setTextureId):
      (WebKit::WebExternalTextureLayerImpl::setFlipped):
      (WebKit::WebExternalTextureLayerImpl::setUVRect):
      (WebKit::WebExternalTextureLayerImpl::setOpaque):
      (WebKit::WebExternalTextureLayerImpl::setPremultipliedAlpha):
      (WebKit::WebExternalTextureLayerImpl::willModifyTexture):
      (WebKit::WebExternalTextureLayerImpl::setRateLimitContext):
      (WebTextureUpdaterImpl):
      (WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
      (WebKit::WebExternalTextureLayerImpl::prepareTexture):
      (WebKit::WebExternalTextureLayerImpl::context):
      * src/WebExternalTextureLayerImpl.h: Copied from Source/Platform/chromium/public/WebVideoLayer.h.
      (WebKit):
      (WebExternalTextureLayerImpl):
      * src/WebIOSurfaceLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebIOSurfaceLayer.cpp.
      (WebKit):
      (WebKit::WebIOSurfaceLayer::create):
      (WebKit::WebIOSurfaceLayerImpl::WebIOSurfaceLayerImpl):
      (WebKit::WebIOSurfaceLayerImpl::~WebIOSurfaceLayerImpl):
      (WebKit::WebIOSurfaceLayerImpl::setIOSurfaceProperties):
      (WebKit::WebIOSurfaceLayerImpl::layer):
      * src/WebIOSurfaceLayerImpl.h: Copied from Source/Platform/chromium/public/WebImageLayer.h.
      (WebCore):
      (WebKit):
      (WebIOSurfaceLayerImpl):
      * src/WebImageLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebSolidColorLayer.cpp.
      (WebKit):
      (WebKit::WebImageLayer::create):
      (WebKit::WebImageLayerImpl::WebImageLayerImpl):
      (WebKit::WebImageLayerImpl::~WebImageLayerImpl):
      (WebKit::WebImageLayerImpl::layer):
      (WebKit::WebImageLayerImpl::setBitmap):
      * src/WebImageLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebImageLayer.cpp.
      (WebCore):
      (WebKit):
      (WebImageLayerImpl):
      * src/WebLayer.cpp: Removed.
      * src/WebLayerImpl.cpp:
      (WebKit::WebLayer::create):
      (WebKit::WebLayerImpl::WebLayerImpl):
      (WebKit::WebLayerImpl::~WebLayerImpl):
      (WebKit):
      (WebKit::WebLayerImpl::id):
      (WebKit::WebLayerImpl::invalidateRect):
      (WebKit::WebLayerImpl::invalidate):
      (WebKit::WebLayerImpl::addChild):
      (WebKit::WebLayerImpl::insertChild):
      (WebKit::WebLayerImpl::replaceChild):
      (WebKit::WebLayerImpl::setChildren):
      (WebKit::WebLayerImpl::removeFromParent):
      (WebKit::WebLayerImpl::removeAllChildren):
      (WebKit::WebLayerImpl::setAnchorPoint):
      (WebKit::WebLayerImpl::anchorPoint):
      (WebKit::WebLayerImpl::setAnchorPointZ):
      (WebKit::WebLayerImpl::anchorPointZ):
      (WebKit::WebLayerImpl::setBounds):
      (WebKit::WebLayerImpl::bounds):
      (WebKit::WebLayerImpl::setMasksToBounds):
      (WebKit::WebLayerImpl::masksToBounds):
      (WebKit::WebLayerImpl::setMaskLayer):
      (WebKit::WebLayerImpl::setReplicaLayer):
      (WebKit::WebLayerImpl::setOpacity):
      (WebKit::WebLayerImpl::opacity):
      (WebKit::WebLayerImpl::setOpaque):
      (WebKit::WebLayerImpl::opaque):
      (WebKit::WebLayerImpl::setPosition):
      (WebKit::WebLayerImpl::position):
      (WebKit::WebLayerImpl::setSublayerTransform):
      (WebKit::WebLayerImpl::sublayerTransform):
      (WebKit::WebLayerImpl::setTransform):
      (WebKit::WebLayerImpl::transform):
      (WebKit::WebLayerImpl::setDrawsContent):
      (WebKit::WebLayerImpl::drawsContent):
      (WebKit::WebLayerImpl::setPreserves3D):
      (WebKit::WebLayerImpl::setUseParentBackfaceVisibility):
      (WebKit::WebLayerImpl::setBackgroundColor):
      (WebKit::WebLayerImpl::setFilters):
      (WebKit::WebLayerImpl::setBackgroundFilters):
      (WebKit::WebLayerImpl::setDebugBorderColor):
      (WebKit::WebLayerImpl::setDebugBorderWidth):
      (WebKit::WebLayerImpl::setDebugName):
      (WebKit::WebLayerImpl::setAnimationDelegate):
      (WebKit::WebLayerImpl::addAnimation):
      (WebKit::WebLayerImpl::removeAnimation):
      (WebKit::WebLayerImpl::pauseAnimation):
      (WebKit::WebLayerImpl::suspendAnimations):
      (WebKit::WebLayerImpl::resumeAnimations):
      (WebKit::WebLayerImpl::hasActiveAnimation):
      (WebKit::WebLayerImpl::transferAnimationsTo):
      (WebKit::WebLayerImpl::setForceRenderSurface):
      (WebKit::WebLayerImpl::setScrollPosition):
      (WebKit::WebLayerImpl::setScrollable):
      (WebKit::WebLayerImpl::setHaveWheelEventHandlers):
      (WebKit::WebLayerImpl::setShouldScrollOnMainThread):
      (WebKit::WebLayerImpl::setNonFastScrollableRegion):
      (WebKit::WebLayerImpl::setIsContainerForFixedPositionLayers):
      (WebKit::WebLayerImpl::setFixedToContainerLayer):
      (WebKit::WebLayerImpl::layer):
      * src/WebLayerImpl.h:
      (WebCore):
      (WebLayerImpl):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::setRootLayer):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeViewImpl::create):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::readyStateChanged):
      (WebKit::WebMediaPlayerClientImpl::repaint):
      (WebKit::WebMediaPlayerClientImpl::setOpaque):
      (WebKit::WebMediaPlayerClientImpl::platformLayer):
      (WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::setBackingTextureId):
      (WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
      (WebKit::WebPluginContainerImpl::commitBackingTexture):
      (WebKit::WebPluginContainerImpl::setOpaque):
      (WebKit::WebPluginContainerImpl::platformLayer):
      * src/WebPluginContainerImpl.h:
      (WebPluginContainerImpl):
      * src/WebScrollableLayer.cpp: Removed.
      * src/WebScrollbarLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarLayer.cpp.
      (WebKit):
      (WebKit::WebScrollbarLayer::create):
      (WebKit::WebScrollbarLayerImpl::WebScrollbarLayerImpl):
      (WebKit::WebScrollbarLayerImpl::~WebScrollbarLayerImpl):
      (WebKit::WebScrollbarLayerImpl::layer):
      (WebKit::WebScrollbarLayerImpl::setScrollLayer):
      * src/WebScrollbarLayerImpl.h: Copied from Source/WebKit/chromium/src/WebSolidColorLayerImpl.h.
      (WebCore):
      (WebKit):
      (WebScrollbarLayerImpl):
      * src/WebSolidColorLayerImpl.cpp:
      (WebKit::WebSolidColorLayer::create):
      (WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
      (WebKit::WebSolidColorLayerImpl::layer):
      (WebKit):
      (WebKit::WebSolidColorLayerImpl::setBackgroundColor):
      * src/WebSolidColorLayerImpl.h:
      (WebCore):
      (WebKit):
      (WebSolidColorLayerImpl):
      * src/WebVideoLayerImpl.cpp: Copied from Source/WebKit/chromium/src/WebVideoLayer.cpp.
      (WebKit):
      (WebKit::WebVideoLayer::create):
      (WebKit::WebVideoLayerImpl::WebVideoLayerImpl):
      (WebKit::WebVideoLayerImpl::~WebVideoLayerImpl):
      (WebKit::WebVideoLayerImpl::layer):
      (WebKit::WebVideoLayerImpl::active):
      * src/WebVideoLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebVideoLayer.cpp.
      (WebCore):
      (WebKit):
      (WebVideoLayerImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::WebViewImpl):
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit):
      * src/WebViewImpl.h:
      * tests/ImageLayerChromiumTest.cpp:
      (WebCore::TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      75ee680c
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r126076, r126099, and r126106. · ea70c8f0
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/126076
      http://trac.webkit.org/changeset/126099
      http://trac.webkit.org/changeset/126106
      https://bugs.webkit.org/show_bug.cgi?id=94614
      
      Caused crashes during compositor shutdown in Aura builds of
      Chromium (Requested by kbr_google on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-21
      
      Source/Platform:
      
      * chromium/public/WebContentLayer.h:
      (WebCore):
      (WebKit):
      (WebContentLayer):
      (WebKit::WebContentLayer::WebContentLayer):
      (WebKit::WebContentLayer::operator=):
      * chromium/public/WebExternalTextureLayer.h:
      (WebCore):
      (WebExternalTextureLayer):
      (WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
      (WebKit::WebExternalTextureLayer::~WebExternalTextureLayer):
      * chromium/public/WebIOSurfaceLayer.h:
      (WebCore):
      (WebIOSurfaceLayer):
      (WebKit::WebIOSurfaceLayer::WebIOSurfaceLayer):
      * chromium/public/WebImageLayer.h:
      (WebCore):
      (WebImageLayer):
      (WebKit::WebImageLayer::WebImageLayer):
      * chromium/public/WebLayer.h:
      (WebKit):
      (WebLayer):
      (WebKit::WebLayer::WebLayer):
      (WebKit::WebLayer::~WebLayer):
      (WebKit::WebLayer::operator=):
      (WebKit::WebLayer::isNull):
      (WebKit::WebLayer::to):
      (WebKit::WebLayer::toConst):
      (WebKit::WebLayer::unwrap):
      (WebKit::WebLayer::constUnwrap):
      (WebKit::operator==):
      (WebKit::operator!=):
      * chromium/public/WebScrollableLayer.h: Copied from Source/Platform/chromium/public/WebScrollbarLayer.h.
      (WebKit):
      (WebScrollableLayer):
      (WebKit::WebScrollableLayer::WebScrollableLayer):
      (WebKit::WebScrollableLayer::~WebScrollableLayer):
      (WebKit::WebScrollableLayer::operator=):
      * chromium/public/WebScrollbarLayer.h:
      (WebCore):
      (WebKit::WebScrollbarLayer::WebScrollbarLayer):
      (WebKit::WebScrollbarLayer::operator=):
      (WebScrollbarLayer):
      * chromium/public/WebSolidColorLayer.h:
      (WebKit):
      (WebSolidColorLayer):
      * chromium/public/WebVideoLayer.h:
      (WebCore):
      (WebVideoLayer):
      (WebKit::WebVideoLayer::WebVideoLayer):
      
      Source/WebCore:
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      (WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
      (WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::hasScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::scrollLayer):
      (ScrollingCoordinatorPrivate):
      (WebCore::createScrollbarLayer):
      (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
      (WebCore::ScrollingCoordinator::setScrollLayer):
      (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
      (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
      (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
      (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
      (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::prepareForDraw):
      (WebCore::Canvas2DLayerBridge::layer):
      (WebCore::Canvas2DLayerBridge::contextAcquired):
      * platform/graphics/chromium/Canvas2DLayerBridge.h:
      (Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::layer):
      (DrawingBufferPrivate):
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::willBeDestroyed):
      (WebCore):
      (WebCore::GraphicsLayerChromium::updateNames):
      (WebCore::GraphicsLayerChromium::removeFromParent):
      (WebCore::GraphicsLayerChromium::setSize):
      (WebCore::GraphicsLayerChromium::clearBackgroundColor):
      (WebCore::GraphicsLayerChromium::setContentsOpaque):
      (WebCore::GraphicsLayerChromium::setFilters):
      (WebCore::GraphicsLayerChromium::setBackgroundFilters):
      (WebCore::GraphicsLayerChromium::setMaskLayer):
      (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
      (WebCore::GraphicsLayerChromium::setOpacity):
      (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
      (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
      (WebCore::GraphicsLayerChromium::setContentsToImage):
      (WebCore::GraphicsLayerChromium::setContentsToCanvas):
      (WebCore::GraphicsLayerChromium::addAnimation):
      (WebCore::GraphicsLayerChromium::pauseAnimation):
      (WebCore::GraphicsLayerChromium::removeAnimation):
      (WebCore::GraphicsLayerChromium::suspendAnimations):
      (WebCore::GraphicsLayerChromium::resumeAnimations):
      (WebCore::GraphicsLayerChromium::addLinkHighlight):
      (WebCore::GraphicsLayerChromium::didFinishLinkHighlight):
      (WebCore::GraphicsLayerChromium::setContentsToMedia):
      (WebCore::GraphicsLayerChromium::primaryLayer):
      (WebCore::GraphicsLayerChromium::platformLayer):
      (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
      (WebCore::GraphicsLayerChromium::setDebugBorder):
      (WebCore::GraphicsLayerChromium::updateChildList):
      (WebCore::GraphicsLayerChromium::updateLayerPosition):
      (WebCore::GraphicsLayerChromium::updateLayerSize):
      (WebCore::GraphicsLayerChromium::updateAnchorPoint):
      (WebCore::GraphicsLayerChromium::updateTransform):
      (WebCore::GraphicsLayerChromium::updateChildrenTransform):
      (WebCore::GraphicsLayerChromium::updateMasksToBounds):
      (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
      (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
      (WebCore::GraphicsLayerChromium::updateContentsRect):
      (WebCore::GraphicsLayerChromium::updateContentsScale):
      (WebCore::GraphicsLayerChromium::setupContentsLayer):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore::GraphicsLayerChromium::hasContentsLayer):
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::contentsLayer):
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::rootLayer):
      * platform/graphics/chromium/LayerChromium.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gypi:
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      (WebKit::NonCompositedContentHost::setScrollLayer):
      (WebKit::NonCompositedContentHost::setViewport):
      (WebKit::NonCompositedContentHost::scrollLayer):
      * src/NonCompositedContentHost.h:
      * src/WebContentLayer.cpp: Renamed from Source/WebKit/chromium/src/WebVideoLayerImpl.cpp.
      (WebKit):
      (WebKit::WebContentLayer::create):
      (WebKit::WebContentLayer::clearClient):
      (WebKit::WebContentLayer::setDoubleSided):
      (WebKit::WebContentLayer::setContentsScale):
      (WebKit::WebContentLayer::setUseLCDText):
      (WebKit::WebContentLayer::setDrawCheckerboardForMissingTiles):
      (WebKit::WebContentLayer::WebContentLayer):
      (WebKit::WebContentLayer::operator=):
      (WebKit::WebContentLayer::operator PassRefPtr<ContentLayerChromium>):
      * src/WebContentLayerImpl.cpp:
      (WebKit::WebContentLayerImpl::create):
      (WebKit::WebContentLayerImpl::WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::~WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::paintContents):
      * src/WebContentLayerImpl.h:
      (WebContentLayerImpl):
      * src/WebExternalTextureLayer.cpp: Renamed from Source/WebKit/chromium/src/WebExternalTextureLayerImpl.cpp.
      (WebKit):
      (WebTextureUpdaterImpl):
      (WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
      (WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayer::create):
      (WebKit::WebExternalTextureLayer::clearClient):
      (WebKit::WebExternalTextureLayer::setTextureId):
      (WebKit::WebExternalTextureLayer::setFlipped):
      (WebKit::WebExternalTextureLayer::setUVRect):
      (WebKit::WebExternalTextureLayer::setOpaque):
      (WebKit::WebExternalTextureLayer::setPremultipliedAlpha):
      (WebKit::WebExternalTextureLayer::willModifyTexture):
      (WebKit::WebExternalTextureLayer::setRateLimitContext):
      (WebKit::WebExternalTextureLayer::WebExternalTextureLayer):
      * src/WebExternalTextureLayerImpl.h: Removed.
      * src/WebIOSurfaceLayer.cpp: Renamed from Source/WebKit/chromium/src/WebIOSurfaceLayerImpl.cpp.
      (WebKit):
      (WebKit::WebIOSurfaceLayer::create):
      (WebKit::WebIOSurfaceLayer::setIOSurfaceProperties):
      (WebKit::WebIOSurfaceLayer::WebIOSurfaceLayer):
      * src/WebIOSurfaceLayerImpl.h: Removed.
      * src/WebImageLayer.cpp: Renamed from Source/WebKit/chromium/src/WebImageLayerImpl.h.
      (WebKit):
      (WebKit::WebImageLayer::create):
      (WebKit::WebImageLayer::WebImageLayer):
      (WebKit::WebImageLayer::setBitmap):
      * src/WebLayer.cpp: Added.
      (WebKit):
      (WebKit::WebLayer::create):
      (WebKit::WebLayer::reset):
      (WebKit::WebLayer::assign):
      (WebKit::WebLayer::equals):
      (WebKit::WebLayer::invalidateRect):
      (WebKit::WebLayer::invalidate):
      (WebKit::WebLayer::addChild):
      (WebKit::WebLayer::insertChild):
      (WebKit::WebLayer::replaceChild):
      (WebKit::WebLayer::setChildren):
      (WebKit::WebLayer::removeFromParent):
      (WebKit::WebLayer::removeAllChildren):
      (WebKit::WebLayer::setAnchorPoint):
      (WebKit::WebLayer::anchorPoint):
      (WebKit::WebLayer::setAnchorPointZ):
      (WebKit::WebLayer::anchorPointZ):
      (WebKit::WebLayer::setBounds):
      (WebKit::WebLayer::bounds):
      (WebKit::WebLayer::setMasksToBounds):
      (WebKit::WebLayer::masksToBounds):
      (WebKit::WebLayer::setMaskLayer):
      (WebKit::WebLayer::setReplicaLayer):
      (WebKit::WebLayer::setOpacity):
      (WebKit::WebLayer::opacity):
      (WebKit::WebLayer::setOpaque):
      (WebKit::WebLayer::opaque):
      (WebKit::WebLayer::setPosition):
      (WebKit::WebLayer::position):
      (WebKit::WebLayer::setSublayerTransform):
      (WebKit::WebLayer::sublayerTransform):
      (WebKit::WebLayer::setTransform):
      (WebKit::WebLayer::transform):
      (WebKit::WebLayer::setDrawsContent):
      (WebKit::WebLayer::drawsContent):
      (WebKit::WebLayer::setPreserves3D):
      (WebKit::WebLayer::setUseParentBackfaceVisibility):
      (WebKit::WebLayer::setBackgroundColor):
      (WebKit::WebLayer::setFilters):
      (WebKit::WebLayer::setBackgroundFilters):
      (WebKit::WebLayer::setDebugBorderColor):
      (WebKit::WebLayer::setDebugBorderWidth):
      (WebKit::WebLayer::setDebugName):
      (WebKit::WebLayer::setAnimationDelegate):
      (WebKit::WebLayer::addAnimation):
      (WebKit::WebLayer::removeAnimation):
      (WebKit::WebLayer::pauseAnimation):
      (WebKit::WebLayer::suspendAnimations):
      (WebKit::WebLayer::resumeAnimations):
      (WebKit::WebLayer::hasActiveAnimation):
      (WebKit::WebLayer::transferAnimationsTo):
      (WebKit::WebLayer::setForceRenderSurface):
      (WebKit::WebLayer::clearRenderSurface):
      (WebKit::WebLayer::WebLayer):
      (WebKit::WebLayer::operator=):
      (WebKit::WebLayer::operator PassRefPtr<LayerChromium>):
      * src/WebLayerImpl.cpp:
      (WebKit::WebLayerImpl::create):
      (WebKit::WebLayerImpl::WebLayerImpl):
      (WebKit::WebLayerImpl::~WebLayerImpl):
      * src/WebLayerImpl.h:
      (WebLayerImpl):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::setRootLayer):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeViewImpl::create):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::readyStateChanged):
      (WebKit::WebMediaPlayerClientImpl::repaint):
      (WebKit::WebMediaPlayerClientImpl::setOpaque):
      (WebKit::WebMediaPlayerClientImpl::platformLayer):
      (WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::setBackingTextureId):
      (WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
      (WebKit::WebPluginContainerImpl::commitBackingTexture):
      (WebKit::WebPluginContainerImpl::setOpaque):
      (WebKit::WebPluginContainerImpl::platformLayer):
      * src/WebPluginContainerImpl.h:
      (WebPluginContainerImpl):
      * src/WebScrollableLayer.cpp: Renamed from Source/WebKit/chromium/src/WebImageLayerImpl.cpp.
      (WebKit):
      (WebKit::WebScrollableLayer::setScrollPosition):
      (WebKit::WebScrollableLayer::setScrollable):
      (WebKit::WebScrollableLayer::setHaveWheelEventHandlers):
      (WebKit::WebScrollableLayer::setShouldScrollOnMainThread):
      (WebKit::WebScrollableLayer::setNonFastScrollableRegion):
      (WebKit::WebScrollableLayer::setIsContainerForFixedPositionLayers):
      (WebKit::WebScrollableLayer::setFixedToContainerLayer):
      * src/WebScrollbarLayer.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarLayerImpl.cpp.
      (WebKit):
      (WebKit::WebScrollbarLayer::setScrollLayer):
      (WebKit::WebScrollbarLayer::create):
      (WebKit::WebScrollbarLayer::WebScrollbarLayer):
      (WebKit::WebScrollbarLayer::operator=):
      (WebKit::WebScrollbarLayer::operator PassRefPtr<ScrollbarLayerChromium>):
      * src/WebScrollbarLayerImpl.h: Removed.
      * src/WebSolidColorLayer.cpp: Copied from Source/Platform/chromium/public/WebSolidColorLayer.h.
      (WebKit):
      (WebKit::WebSolidColorLayer::create):
      (WebKit::WebSolidColorLayer::WebSolidColorLayer):
      (WebKit::WebSolidColorLayer::setBackgroundColor):
      * src/WebSolidColorLayerImpl.cpp:
      (WebKit::WebSolidColorLayerImpl::create):
      (WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
      * src/WebSolidColorLayerImpl.h:
      (WebSolidColorLayerImpl):
      * src/WebVideoLayer.cpp: Renamed from Source/WebKit/chromium/src/WebVideoLayerImpl.h.
      (WebKit):
      (WebKit::WebVideoLayer::create):
      (WebKit::WebVideoLayer::WebVideoLayer):
      (WebKit::WebVideoLayer::active):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::WebViewImpl):
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit):
      * src/WebViewImpl.h:
      * tests/ImageLayerChromiumTest.cpp:
      (WebCore::TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126169 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ea70c8f0
  9. 20 Aug, 2012 5 commits
    • kbr@google.com's avatar
      Unreviewed, rolling out r126095. · ca5d13a0
      kbr@google.com authored
      http://trac.webkit.org/changeset/126095
      https://bugs.webkit.org/show_bug.cgi?id=94555
      
      Breaks compilation of downstream WebWidget::paint
      implementations (Requested by jamesr on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-08-20
      
      * public/WebWidget.h:
      (WebKit::WebWidget::paint):
      * src/WebPagePopupImpl.cpp:
      (WebKit::WebPagePopupImpl::paint):
      * src/WebPagePopupImpl.h:
      (WebPagePopupImpl):
      * src/WebPopupMenuImpl.cpp:
      (WebKit::WebPopupMenuImpl::paint):
      * src/WebPopupMenuImpl.h:
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::paint):
      * src/WebViewImpl.h:
      (WebViewImpl):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126111 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ca5d13a0
    • abarth@webkit.org's avatar
      WebWidget should be able to paint into a zoomed canvas without aliasing · 78b1f42c
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=92043
      
      Reviewed by James Robinson.
      
      If accelerated compositing is enabled, WebWidget::paint reads back from
      the compositor rather than re-painting the widget. That approach works
      well if the canvas we're rendering into is at a similar resolution to
      the pixels in the compositor, but if the canvas has been scaled (e.g.,
      to help the user disambiguate links), then reading back from the
      compositor will cause aliasing artifacts.
      
      This patch adds an option to paint to let the embedder request a
      software re-rendering of the widget to avoid these aliasing artifacts.
      
      * public/WebWidget.h:
      (WebKit::WebWidget::paint):
      * src/WebPagePopupImpl.cpp:
      (WebKit::WebPagePopupImpl::paint):
      * src/WebPagePopupImpl.h:
      (WebPagePopupImpl):
      * src/WebPopupMenuImpl.cpp:
      (WebKit::WebPopupMenuImpl::paint):
      * src/WebPopupMenuImpl.h:
      * src/WebViewImpl.cpp:
      (WebKit::canvasBackgroundForTransparencey):
      (WebKit):
      (WebKit::WebViewImpl::paint):
      * src/WebViewImpl.h:
      (WebViewImpl):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126095 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      78b1f42c
    • jamesr@google.com's avatar
      [chromium] Change WebLayer from a concrete type to a pure virtual interface · d11fbbaa
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=94174
      
      Reviewed by Adrienne Walker.
      
      Source/Platform:
      
      This changes WebLayer from a value type to a pure virtual interface and changes Web*Layers from subtypes to
      standalone types that have a WebLayer. This better isolates the implementation from the interface and, since
      it's not possible to re-wrap an existing layer, makes cleanup explicit instead of requiring the caller to invoke
      special cleanup methods before shutdown.
      
      * chromium/public/WebContentLayer.h:
      (WebContentLayer):
      * chromium/public/WebExternalTextureLayer.h:
      (WebExternalTextureLayer):
      * chromium/public/WebIOSurfaceLayer.h:
      (WebIOSurfaceLayer):
      * chromium/public/WebImageLayer.h:
      (WebImageLayer):
      * chromium/public/WebLayer.h:
      (WebKit):
      (WebLayer):
      (WebKit::WebLayer::~WebLayer):
      * chromium/public/WebScrollableLayer.h:
      (WebScrollableLayer):
      * chromium/public/WebScrollbarLayer.h:
      (WebScrollbarLayer):
      * chromium/public/WebSolidColorLayer.h:
      (WebKit):
      (WebSolidColorLayer):
      (WebKit::WebSolidColorLayer::~WebSolidColorLayer):
      * chromium/public/WebVideoLayer.h:
      (WebVideoLayer):
      
      Source/WebCore:
      
      This updates WebCore code for the WebLayer interface changes. Classes that have ownership of specific layer
      types (such as DrawingBufferChromium, Canvas2DLayerBridge and ScrollingCoordinatorChromium) hold ownership
      of a specific type and a pointer to the WebLayer to GraphicsLayerChromium to be included in the final layer
      tree. GraphicsLayerChromium holds a WebContentLayer and (optionally) a WebImageLayer and WebLayer (for
      m_transformLayer) and assembles the final layer tree.
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      (WebCore::ScrollingCoordinatorPrivate::ScrollingCoordinatorPrivate):
      (ScrollingCoordinatorPrivate):
      (WebCore::ScrollingCoordinatorPrivate::setScrollLayer):
      (WebCore::ScrollingCoordinatorPrivate::setHorizontalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::setVerticalScrollbarLayer):
      (WebCore::ScrollingCoordinatorPrivate::scrollLayer):
      (WebCore::scrollableLayerForGraphicsLayer):
      (WebCore):
      (WebCore::createScrollbarLayer):
      (WebCore::ScrollingCoordinator::setScrollLayer):
      (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
      (WebCore::ScrollingCoordinator::setWheelEventHandlerCount):
      (WebCore::ScrollingCoordinator::setShouldUpdateScrollLayerPositionOnMainThread):
      (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
      (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::AcceleratedDeviceContext::AcceleratedDeviceContext):
      (WebCore::AcceleratedDeviceContext::clearLayer):
      (AcceleratedDeviceContext):
      (WebCore::AcceleratedDeviceContext::prepareForDraw):
      (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::~Canvas2DLayerBridge):
      (WebCore::Canvas2DLayerBridge::skCanvas):
      (WebCore::Canvas2DLayerBridge::layer):
      (WebCore::Canvas2DLayerBridge::contextAcquired):
      * platform/graphics/chromium/Canvas2DLayerBridge.h:
      (WebCore):
      (Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBufferPrivate::DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::~DrawingBufferPrivate):
      (WebCore::DrawingBufferPrivate::layer):
      (DrawingBufferPrivate):
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::updateNames):
      (WebCore::GraphicsLayerChromium::removeFromParent):
      (WebCore::GraphicsLayerChromium::setSize):
      (WebCore::GraphicsLayerChromium::clearBackgroundColor):
      (WebCore::GraphicsLayerChromium::setContentsOpaque):
      (WebCore::GraphicsLayerChromium::setFilters):
      (WebCore::GraphicsLayerChromium::setBackgroundFilters):
      (WebCore::GraphicsLayerChromium::setMaskLayer):
      (WebCore::GraphicsLayerChromium::setBackfaceVisibility):
      (WebCore::GraphicsLayerChromium::setOpacity):
      (WebCore::GraphicsLayerChromium::setReplicatedByLayer):
      (WebCore::GraphicsLayerChromium::setContentsNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplay):
      (WebCore::GraphicsLayerChromium::setNeedsDisplayInRect):
      (WebCore::GraphicsLayerChromium::setContentsToImage):
      (WebCore::GraphicsLayerChromium::setContentsToCanvas):
      (WebCore):
      (WebCore::GraphicsLayerChromium::setContentsToMedia):
      (WebCore::GraphicsLayerChromium::setContentsTo):
      (WebCore::GraphicsLayerChromium::addAnimation):
      (WebCore::GraphicsLayerChromium::pauseAnimation):
      (WebCore::GraphicsLayerChromium::removeAnimation):
      (WebCore::GraphicsLayerChromium::suspendAnimations):
      (WebCore::GraphicsLayerChromium::resumeAnimations):
      (WebCore::GraphicsLayerChromium::addLinkHighlight):
      (WebCore::GraphicsLayerChromium::didFinishLinkHighlight):
      (WebCore::GraphicsLayerChromium::platformLayer):
      (WebCore::GraphicsLayerChromium::setDebugBackgroundColor):
      (WebCore::GraphicsLayerChromium::setDebugBorder):
      (WebCore::GraphicsLayerChromium::updateChildList):
      (WebCore::GraphicsLayerChromium::updateLayerPosition):
      (WebCore::GraphicsLayerChromium::updateLayerSize):
      (WebCore::GraphicsLayerChromium::updateAnchorPoint):
      (WebCore::GraphicsLayerChromium::updateTransform):
      (WebCore::GraphicsLayerChromium::updateChildrenTransform):
      (WebCore::GraphicsLayerChromium::updateMasksToBounds):
      (WebCore::GraphicsLayerChromium::updateLayerPreserves3D):
      (WebCore::GraphicsLayerChromium::updateLayerIsDrawable):
      (WebCore::GraphicsLayerChromium::updateLayerBackgroundColor):
      (WebCore::GraphicsLayerChromium::updateContentsRect):
      (WebCore::GraphicsLayerChromium::updateContentsScale):
      (WebCore::GraphicsLayerChromium::setupContentsLayer):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (WebCore::GraphicsLayerChromium::hasContentsLayer):
      (WebCore::GraphicsLayerChromium::contentLayer):
      (GraphicsLayerChromium):
      (WebCore::GraphicsLayerChromium::contentsLayer):
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::rootLayer):
      * platform/graphics/chromium/LayerChromium.h:
      
      Source/WebKit/chromium:
      
      This updates the implementation of the Web*Layer family to the new design and updates callers in WebViewImpl /
      NonCompositedContentHost.
      
      * WebKit.gyp:
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      (WebKit::NonCompositedContentHost::setScrollLayer):
      (WebKit::NonCompositedContentHost::setViewport):
      (WebKit::NonCompositedContentHost::scrollLayer):
      * src/NonCompositedContentHost.h:
      * src/WebContentLayerImpl.cpp:
      (WebKit::WebContentLayer::create):
      (WebKit::WebContentLayerImpl::WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::~WebContentLayerImpl):
      (WebKit::WebContentLayerImpl::layer):
      (WebKit):
      (WebKit::WebContentLayerImpl::clearClient):
      (WebKit::WebContentLayerImpl::setDoubleSided):
      (WebKit::WebContentLayerImpl::setContentsScale):
      (WebKit::WebContentLayerImpl::setUseLCDText):
      (WebKit::WebContentLayerImpl::setDrawCheckerboardForMissingTiles):
      (WebKit::WebContentLayerImpl::paintContents):
      * src/WebContentLayerImpl.h:
      (WebContentLayerImpl):
      * src/WebExternalTextureLayer.cpp: Removed.
      * src/WebExternalTextureLayerImpl.cpp: Added.
      (WebKit):
      (WebKit::WebExternalTextureLayer::create):
      (WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):
      (WebKit::WebExternalTextureLayerImpl::layer):
      (WebKit::WebExternalTextureLayerImpl::clearClient):
      (WebKit::WebExternalTextureLayerImpl::setTextureId):
      (WebKit::WebExternalTextureLayerImpl::setFlipped):
      (WebKit::WebExternalTextureLayerImpl::setUVRect):
      (WebKit::WebExternalTextureLayerImpl::setOpaque):
      (WebKit::WebExternalTextureLayerImpl::setPremultipliedAlpha):
      (WebKit::WebExternalTextureLayerImpl::willModifyTexture):
      (WebKit::WebExternalTextureLayerImpl::setRateLimitContext):
      (WebTextureUpdaterImpl):
      (WebKit::WebTextureUpdaterImpl::WebTextureUpdaterImpl):
      (WebKit::WebExternalTextureLayerImpl::prepareTexture):
      (WebKit::WebExternalTextureLayerImpl::context):
      * src/WebExternalTextureLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebContentLayer.cpp.
      (WebKit):
      (WebExternalTextureLayerImpl):
      * src/WebIOSurfaceLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebIOSurfaceLayer.cpp.
      (WebKit):
      (WebKit::WebIOSurfaceLayer::create):
      (WebKit::WebIOSurfaceLayerImpl::WebIOSurfaceLayerImpl):
      (WebKit::WebIOSurfaceLayerImpl::~WebIOSurfaceLayerImpl):
      (WebKit::WebIOSurfaceLayerImpl::setIOSurfaceProperties):
      (WebKit::WebIOSurfaceLayerImpl::layer):
      * src/WebIOSurfaceLayerImpl.h: Copied from Source/Platform/chromium/public/WebImageLayer.h.
      (WebCore):
      (WebKit):
      (WebIOSurfaceLayerImpl):
      * src/WebImageLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebSolidColorLayer.cpp.
      (WebKit):
      (WebKit::WebImageLayer::create):
      (WebKit::WebImageLayerImpl::WebImageLayerImpl):
      (WebKit::WebImageLayerImpl::~WebImageLayerImpl):
      (WebKit::WebImageLayerImpl::layer):
      (WebKit::WebImageLayerImpl::setBitmap):
      * src/WebImageLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebImageLayer.cpp.
      (WebCore):
      (WebKit):
      (WebImageLayerImpl):
      * src/WebLayer.cpp: Removed.
      * src/WebLayerImpl.cpp:
      (WebKit::WebLayer::create):
      (WebKit::WebLayerImpl::WebLayerImpl):
      (WebKit::WebLayerImpl::~WebLayerImpl):
      (WebKit):
      (WebKit::WebLayerImpl::invalidateRect):
      (WebKit::WebLayerImpl::invalidate):
      (WebKit::WebLayerImpl::addChild):
      (WebKit::WebLayerImpl::insertChild):
      (WebKit::WebLayerImpl::replaceChild):
      (WebKit::WebLayerImpl::setChildren):
      (WebKit::WebLayerImpl::removeFromParent):
      (WebKit::WebLayerImpl::removeAllChildren):
      (WebKit::WebLayerImpl::setAnchorPoint):
      (WebKit::WebLayerImpl::anchorPoint):
      (WebKit::WebLayerImpl::setAnchorPointZ):
      (WebKit::WebLayerImpl::anchorPointZ):
      (WebKit::WebLayerImpl::setBounds):
      (WebKit::WebLayerImpl::bounds):
      (WebKit::WebLayerImpl::setMasksToBounds):
      (WebKit::WebLayerImpl::masksToBounds):
      (WebKit::WebLayerImpl::setMaskLayer):
      (WebKit::WebLayerImpl::setReplicaLayer):
      (WebKit::WebLayerImpl::setOpacity):
      (WebKit::WebLayerImpl::opacity):
      (WebKit::WebLayerImpl::setOpaque):
      (WebKit::WebLayerImpl::opaque):
      (WebKit::WebLayerImpl::setPosition):
      (WebKit::WebLayerImpl::position):
      (WebKit::WebLayerImpl::setSublayerTransform):
      (WebKit::WebLayerImpl::sublayerTransform):
      (WebKit::WebLayerImpl::setTransform):
      (WebKit::WebLayerImpl::transform):
      (WebKit::WebLayerImpl::setDrawsContent):
      (WebKit::WebLayerImpl::drawsContent):
      (WebKit::WebLayerImpl::setPreserves3D):
      (WebKit::WebLayerImpl::setUseParentBackfaceVisibility):
      (WebKit::WebLayerImpl::setBackgroundColor):
      (WebKit::WebLayerImpl::setFilters):
      (WebKit::WebLayerImpl::setBackgroundFilters):
      (WebKit::WebLayerImpl::setDebugBorderColor):
      (WebKit::WebLayerImpl::setDebugBorderWidth):
      (WebKit::WebLayerImpl::setDebugName):
      (WebKit::WebLayerImpl::setAnimationDelegate):
      (WebKit::WebLayerImpl::addAnimation):
      (WebKit::WebLayerImpl::removeAnimation):
      (WebKit::WebLayerImpl::pauseAnimation):
      (WebKit::WebLayerImpl::suspendAnimations):
      (WebKit::WebLayerImpl::resumeAnimations):
      (WebKit::WebLayerImpl::hasActiveAnimation):
      (WebKit::WebLayerImpl::transferAnimationsTo):
      (WebKit::WebLayerImpl::setForceRenderSurface):
      (WebKit::WebLayerImpl::clearRenderSurface):
      (WebKit::WebLayerImpl::setScrollPosition):
      (WebKit::WebLayerImpl::setScrollable):
      (WebKit::WebLayerImpl::setHaveWheelEventHandlers):
      (WebKit::WebLayerImpl::setShouldScrollOnMainThread):
      (WebKit::WebLayerImpl::setNonFastScrollableRegion):
      (WebKit::WebLayerImpl::setIsContainerForFixedPositionLayers):
      (WebKit::WebLayerImpl::setFixedToContainerLayer):
      (WebKit::WebLayerImpl::layer):
      * src/WebLayerImpl.h:
      (WebCore):
      (WebLayerImpl):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::setRootLayer):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeViewImpl::create):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::readyStateChanged):
      (WebKit::WebMediaPlayerClientImpl::repaint):
      (WebKit::WebMediaPlayerClientImpl::setOpaque):
      (WebKit::WebMediaPlayerClientImpl::platformLayer):
      (WebKit::WebMediaPlayerClientImpl::acceleratedRenderingInUse):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::setBackingTextureId):
      (WebKit::WebPluginContainerImpl::setBackingIOSurfaceId):
      (WebKit::WebPluginContainerImpl::commitBackingTexture):
      (WebKit::WebPluginContainerImpl::setOpaque):
      (WebKit::WebPluginContainerImpl::platformLayer):
      * src/WebPluginContainerImpl.h:
      (WebPluginContainerImpl):
      * src/WebScrollableLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollableLayer.cpp.
      (WebKit):
      (WebKit::WebScrollableLayer::setScrollPosition):
      (WebKit::WebScrollableLayer::setScrollable):
      (WebKit::WebScrollableLayer::setHaveWheelEventHandlers):
      (WebKit::WebScrollableLayer::setShouldScrollOnMainThread):
      (WebKit::WebScrollableLayer::setNonFastScrollableRegion):
      (WebKit::WebScrollableLayer::setIsContainerForFixedPositionLayers):
      (WebKit::WebScrollableLayer::setFixedToContainerLayer):
      * src/WebScrollbarLayerImpl.cpp: Renamed from Source/WebKit/chromium/src/WebScrollbarLayer.cpp.
      (WebKit):
      (WebKit::WebScrollbarLayer::create):
      (WebKit::WebScrollbarLayerImpl::WebScrollbarLayerImpl):
      (WebKit::WebScrollbarLayerImpl::~WebScrollbarLayerImpl):
      (WebKit::WebScrollbarLayerImpl::layer):
      (WebKit::WebScrollbarLayerImpl::setScrollLayer):
      * src/WebScrollbarLayerImpl.h: Copied from Source/WebKit/chromium/src/WebSolidColorLayerImpl.h.
      (WebCore):
      (WebKit):
      (WebScrollbarLayerImpl):
      * src/WebSolidColorLayerImpl.cpp:
      (WebKit::WebSolidColorLayer::create):
      (WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
      (WebKit::WebSolidColorLayerImpl::layer):
      (WebKit):
      (WebKit::WebSolidColorLayerImpl::setBackgroundColor):
      * src/WebSolidColorLayerImpl.h:
      (WebCore):
      (WebKit):
      (WebSolidColorLayerImpl):
      * src/WebVideoLayerImpl.cpp: Copied from Source/WebKit/chromium/src/WebVideoLayer.cpp.
      (WebKit):
      (WebKit::WebVideoLayer::create):
      (WebKit::WebVideoLayerImpl::WebVideoLayerImpl):
      (WebKit::WebVideoLayerImpl::~WebVideoLayerImpl):
      (WebKit::WebVideoLayerImpl::layer):
      (WebKit::WebVideoLayerImpl::active):
      * src/WebVideoLayerImpl.h: Renamed from Source/WebKit/chromium/src/WebVideoLayer.cpp.
      (WebCore):
      (WebKit):
      (WebVideoLayerImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::WebViewImpl):
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit):
      * src/WebViewImpl.h:
      * tests/ImageLayerChromiumTest.cpp:
      (WebCore::TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126076 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d11fbbaa
    • leandrogracia@chromium.org's avatar
      [Chromium] detectContentIntentAround has a misleading name · 0fe0bbab
      leandrogracia@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94349
      
      Reviewed by Adam Barth.
      
      The current WebViewClient API exposes a method named detectContentIntentAround.
      However, this is not designed to detect any "content intent", but to allow the embedder
      to detect content around a position and fire Android intents if appropriate.
      
      This patch also disables content detection if the touched node listens to events
      that consume the tap action like clicks, touch events or mouse events.
      
      * public/WebViewClient.h:
      (WebViewClient):
      (WebKit::WebViewClient::detectContentAround):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::detectContentOnTouch):
      * src/WebViewImpl.h:
      (WebViewImpl):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126061 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0fe0bbab
    • hans@chromium.org's avatar
      Respect runtime flags for Device Orientation and Device Motion · 6bdb108d
      hans@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=94479
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      There are flags that allows disabling of device orientation and device
      motion at runtime. These flags determine the availability of the
      corresponding event constructors in DOMWindow.
      
      However, the flags should also control the ability to add event
      listeners for these events, otherwise the feature can be used even if
      it is disabled.
      
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::addEventListener):
      
      Source/WebKit/chromium:
      
      WebRuntimeFeatures::enableDeviceMotion should not be hard-coded to
      false.
      
      * src/WebViewImpl.cpp:
      (WebKit::WebView::create):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@126057 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6bdb108d
  10. 09 Aug, 2012 3 commits
    • nduca@chromium.org's avatar
      [chromium] Expose CCGraphicsContext as WebCompositorOutputSurface · 90ebc0fd
      nduca@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=92890
      
      Reviewed by James Robinson.
      
      Source/Platform:
      
      The CCGraphicsContext was introduced as a wrapper around the 2D
      and 3D output for the compositor. However, it is a CC only
      concept. We want to be able to make 2D and ubercomp-mode IPCs on
      behalf of the compositor. This patch allows this by pushing this
      abstraction out to the Chrome-visible layer of the compositor,
      changing the name to OutputSurface based on discussions on
      wkb.ug/90736. A future patch will rename the CCGraphicsContext to
      CCOutputSurface.
      
      * Platform.gypi:
      * chromium/public/WebCompositorOutputSurface.h: Added.
      (WebKit):
      (WebCompositorOutputSurface):
      (WebKit::WebCompositorOutputSurface::~WebCompositorOutputSurface):
      (WebKit::WebCompositorOutputSurface::Capabilities::Capabilities):
      (Capabilities):
      * chromium/public/WebCompositorOutputSurfaceClient.h: Added.
      (WebKit):
      (WebCompositorOutputSurfaceClient):
      (WebKit::WebCompositorOutputSurfaceClient::~WebCompositorOutputSurfaceClient):
      * chromium/public/WebLayerTreeView.h:
      (WebKit::WebLayerTreeView::Settings::Settings):
      (Settings):
      * chromium/public/WebLayerTreeViewClient.h:
      (WebKit):
      (WebLayerTreeViewClient):
      (WebKit::WebLayerTreeViewClient::createContext3D):
      (WebKit::WebLayerTreeViewClient::createOutputSurface):
      
      Source/WebCore:
      
      * platform/graphics/chromium/cc/CCGraphicsContext.h:
      (WebCore):
      * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
      (WebCore::CCLayerTreeHost::initializeLayerRenderer):
      (WebCore::CCLayerTreeHost::recreateContext):
      (WebCore::CCLayerTreeHost::createContext):
      * platform/graphics/chromium/cc/CCLayerTreeHost.h:
      (WebCore):
      (CCLayerTreeHostClient):
      (WebCore::CCLayerTreeSettings::CCLayerTreeSettings):
      (CCLayerTreeSettings):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::onVSyncParametersChanged):
      (WebCore):
      (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
      (CCLayerTreeHostImplClient):
      * platform/graphics/chromium/cc/CCProxy.h:
      (WebKit):
      (WebCore):
      * platform/graphics/chromium/cc/CCRenderer.h:
      (CCRendererClient):
      (WebCore::CCRendererClient::~CCRendererClient):
      * platform/graphics/chromium/cc/CCResourceProvider.cpp:
      * platform/graphics/chromium/cc/CCResourceProvider.h:
      * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
      * platform/graphics/chromium/cc/CCThreadProxy.cpp:
      (WebCore::CCThreadProxy::recreateContext):
      (WebCore::CCThreadProxy::onVSyncParametersChanged):
      (WebCore):
      (WebCore::CCThreadProxy::beginFrame):
      * platform/graphics/chromium/cc/CCThreadProxy.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gyp:
      * WebKit.gypi:
      * public/WebSettings.h:
      * public/WebViewClient.h:
      (WebKit):
      (WebViewClient):
      (WebKit::WebViewClient::createOutputSurface):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::Settings::operator CCLayerTreeSettings):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit):
      (WebGraphicsContextToOutputSurfaceAdapter):
      (WebKit::WebGraphicsContextToOutputSurfaceAdapter::WebGraphicsContextToOutputSurfaceAdapter):
      (WebKit::WebLayerTreeViewClientAdapter::WebLayerTreeViewClientAdapter):
      * src/WebSettingsImpl.cpp:
      (WebKit::WebSettingsImpl::WebSettingsImpl):
      * src/WebSettingsImpl.h:
      (WebSettingsImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit::WebViewImpl::createOutputSurface):
      (WebKit):
      (WebKit::WebViewImpl::didRebindGraphicsContext):
      (WebKit::WebViewImpl::didRecreateOutputSurface):
      * src/WebViewImpl.h:
      (WebViewImpl):
      * tests/CCLayerTreeHostImplTest.cpp:
      * tests/CCLayerTreeHostTest.cpp:
      (WTF):
      (WTF::CCLayerTreeHostTestSetSingleLostContext::didRecreateOutputSurface):
      (WTF::CCLayerTreeHostTestSetRepeatedLostContext::didRecreateOutputSurface):
      * tests/CCResourceProviderTest.cpp:
      (WebKit::CCResourceProviderTest::CCResourceProviderTest):
      * tests/CCTextureUpdateControllerTest.cpp:
      * tests/CCThreadedTest.cpp:
      (WebKitTests::TestHooks::createOutputSurface):
      * tests/CCThreadedTest.h:
      (WebKitTests::TestHooks::didRecreateOutputSurface):
      * tests/Canvas2DLayerBridgeTest.cpp:
      (Canvas2DLayerBridgeTest::fullLifecycleTest):
      * tests/FakeCCGraphicsContext.h:
      (WebKit::createFakeCCGraphicsContext):
      * tests/FakeCCLayerTreeHostClient.h:
      * tests/FakeWebCompositorOutputSurface.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCGraphicsContext.h.
      (WebKit):
      (FakeWebCompositorOutputSurface):
      (WebKit::FakeWebCompositorOutputSurface::create):
      (WebKit::FakeWebCompositorOutputSurface::FakeWebCompositorOutputSurface):
      * tests/LayerRendererChromiumTest.cpp:
      (LayerRendererChromiumTest::LayerRendererChromiumTest):
      (TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90ebc0fd
    • nduca@chromium.org's avatar
      Unreviewed, rolling out r125212. · ad067962
      nduca@chromium.org authored
      http://trac.webkit.org/changeset/125212
      https://bugs.webkit.org/show_bug.cgi?id=92890
      
      Compile failure on mac dbg builder
      
      Source/Platform:
      
      * Platform.gypi:
      * chromium/public/WebCompositorOutputSurface.h: Removed.
      * chromium/public/WebCompositorOutputSurfaceClient.h: Removed.
      * chromium/public/WebLayerTreeView.h:
      (WebKit::WebLayerTreeView::Settings::Settings):
      (Settings):
      * chromium/public/WebLayerTreeViewClient.h:
      (WebKit):
      (WebLayerTreeViewClient):
      
      Source/WebCore:
      
      * platform/graphics/chromium/cc/CCGraphicsContext.h:
      (WebCore):
      (CCGraphicsContext):
      (WebCore::CCGraphicsContext::create2D):
      (WebCore::CCGraphicsContext::create3D):
      (WebCore::CCGraphicsContext::context3D):
      (WebCore::CCGraphicsContext::CCGraphicsContext):
      * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
      (WebCore::CCLayerTreeHost::initializeLayerRenderer):
      (WebCore::CCLayerTreeHost::recreateContext):
      (WebCore::CCLayerTreeHost::createContext):
      * platform/graphics/chromium/cc/CCLayerTreeHost.h:
      (WebCore):
      (CCLayerTreeHostClient):
      (WebCore::CCLayerTreeSettings::CCLayerTreeSettings):
      (CCLayerTreeSettings):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
      (CCLayerTreeHostImplClient):
      * platform/graphics/chromium/cc/CCProxy.h:
      (WebCore):
      * platform/graphics/chromium/cc/CCRenderer.h:
      (CCRendererClient):
      * platform/graphics/chromium/cc/CCResourceProvider.cpp:
      * platform/graphics/chromium/cc/CCResourceProvider.h:
      (WebCore):
      * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
      * platform/graphics/chromium/cc/CCThreadProxy.cpp:
      (WebCore::CCThreadProxy::recreateContext):
      (WebCore::CCThreadProxy::beginFrame):
      * platform/graphics/chromium/cc/CCThreadProxy.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gyp:
      * WebKit.gypi:
      * public/WebSettings.h:
      * public/WebViewClient.h:
      (WebKit):
      (WebViewClient):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::Settings::operator CCLayerTreeSettings):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit::WebLayerTreeViewClientAdapter::WebLayerTreeViewClientAdapter):
      * src/WebSettingsImpl.cpp:
      (WebKit::WebSettingsImpl::WebSettingsImpl):
      (WebKit::WebSettingsImpl::setForceSoftwareCompositing):
      (WebKit):
      * src/WebSettingsImpl.h:
      (WebKit::WebSettingsImpl::forceSoftwareCompositing):
      (WebSettingsImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit::WebViewImpl::createCompositorGraphicsContext3D):
      (WebKit::WebViewImpl::createContext3D):
      (WebKit::WebViewImpl::didRebindGraphicsContext):
      * src/WebViewImpl.h:
      (WebViewImpl):
      * tests/CCLayerTreeHostImplTest.cpp:
      * tests/CCLayerTreeHostTest.cpp:
      (WTF):
      (WTF::CCLayerTreeHostTestSetSingleLostContext::didRecreateContext):
      (WTF::CCLayerTreeHostTestSetRepeatedLostContext::didRecreateContext):
      * tests/CCResourceProviderTest.cpp:
      (WebKit::CCResourceProviderTest::CCResourceProviderTest):
      * tests/CCTextureUpdateControllerTest.cpp:
      * tests/CCThreadedTest.cpp:
      (WebKitTests::TestHooks::createContext):
      * tests/CCThreadedTest.h:
      (WebKitTests::TestHooks::didRecreateContext):
      * tests/Canvas2DLayerBridgeTest.cpp:
      (Canvas2DLayerBridgeTest::fullLifecycleTest):
      * tests/FakeCCGraphicsContext.h:
      (WebKit::createFakeCCGraphicsContext):
      * tests/FakeCCLayerTreeHostClient.h:
      * tests/FakeWebCompositorOutputSurface.h: Removed.
      * tests/LayerRendererChromiumTest.cpp:
      (LayerRendererChromiumTest::LayerRendererChromiumTest):
      (TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125218 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ad067962
    • nduca@chromium.org's avatar
      [chromium] Expose CCGraphicsContext as WebCompositorOutputSurface · fc9dd4ad
      nduca@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=92890
      
      Reviewed by James Robinson.
      
      Source/Platform:
      
      The CCGraphicsContext was introduced as a wrapper around the 2D
      and 3D output for the compositor. However, it is a CC only
      concept. We want to be able to make 2D and ubercomp-mode IPCs on
      behalf of the compositor. This patch allows this by pushing this
      abstraction out to the Chrome-visible layer of the compositor,
      changing the name to OutputSurface based on discussions on
      wkb.ug/90736. A future patch will rename the CCGraphicsContext to
      CCOutputSurface.
      
      * Platform.gypi:
      * chromium/public/WebCompositorOutputSurface.h: Added.
      (WebKit):
      (WebCompositorOutputSurface):
      (WebKit::WebCompositorOutputSurface::~WebCompositorOutputSurface):
      (WebKit::WebCompositorOutputSurface::Capabilities::Capabilities):
      (Capabilities):
      * chromium/public/WebCompositorOutputSurfaceClient.h: Added.
      (WebKit):
      (WebCompositorOutputSurfaceClient):
      (WebKit::WebCompositorOutputSurfaceClient::~WebCompositorOutputSurfaceClient):
      * chromium/public/WebLayerTreeView.h:
      (WebKit::WebLayerTreeView::Settings::Settings):
      (Settings):
      * chromium/public/WebLayerTreeViewClient.h:
      (WebKit):
      (WebLayerTreeViewClient):
      (WebKit::WebLayerTreeViewClient::createContext3D):
      (WebKit::WebLayerTreeViewClient::createOutputSurface):
      
      Source/WebCore:
      
      * platform/graphics/chromium/cc/CCGraphicsContext.h:
      (WebCore):
      * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
      (WebCore::CCLayerTreeHost::initializeLayerRenderer):
      (WebCore::CCLayerTreeHost::recreateContext):
      (WebCore::CCLayerTreeHost::createContext):
      * platform/graphics/chromium/cc/CCLayerTreeHost.h:
      (WebCore):
      (CCLayerTreeHostClient):
      (WebCore::CCLayerTreeSettings::CCLayerTreeSettings):
      (CCLayerTreeSettings):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::onVSyncParametersChanged):
      (WebCore):
      (WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
      (CCLayerTreeHostImplClient):
      * platform/graphics/chromium/cc/CCProxy.h:
      (WebKit):
      (WebCore):
      * platform/graphics/chromium/cc/CCRenderer.h:
      (CCRendererClient):
      (WebCore::CCRendererClient::~CCRendererClient):
      * platform/graphics/chromium/cc/CCResourceProvider.cpp:
      * platform/graphics/chromium/cc/CCResourceProvider.h:
      * platform/graphics/chromium/cc/CCSingleThreadProxy.h:
      * platform/graphics/chromium/cc/CCThreadProxy.cpp:
      (WebCore::CCThreadProxy::recreateContext):
      (WebCore::CCThreadProxy::onVSyncParametersChanged):
      (WebCore):
      (WebCore::CCThreadProxy::beginFrame):
      * platform/graphics/chromium/cc/CCThreadProxy.h:
      
      Source/WebKit/chromium:
      
      * WebKit.gyp:
      * WebKit.gypi:
      * public/WebSettings.h:
      * public/WebViewClient.h:
      (WebKit):
      (WebViewClient):
      (WebKit::WebViewClient::createOutputSurface):
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::Settings::operator CCLayerTreeSettings):
      * src/WebLayerTreeViewImpl.cpp:
      (WebKit):
      (WebGraphicsContextToOutputSurfaceAdapter):
      (WebKit::WebGraphicsContextToOutputSurfaceAdapter::WebGraphicsContextToOutputSurfaceAdapter):
      (WebKit::WebLayerTreeViewClientAdapter::WebLayerTreeViewClientAdapter):
      * src/WebSettingsImpl.cpp:
      (WebKit::WebSettingsImpl::WebSettingsImpl):
      * src/WebSettingsImpl.h:
      (WebSettingsImpl):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
      (WebKit::WebViewImpl::createOutputSurface):
      (WebKit):
      (WebKit::WebViewImpl::didRebindGraphicsContext):
      (WebKit::WebViewImpl::didRebindOutputSurface):
      * src/WebViewImpl.h:
      (WebViewImpl):
      * tests/CCLayerTreeHostImplTest.cpp:
      * tests/CCLayerTreeHostTest.cpp:
      (WTF):
      (WTF::CCLayerTreeHostTestSetSingleLostContext::didRecreateOutputSurface):
      (WTF::CCLayerTreeHostTestSetRepeatedLostContext::didRecreateOutputSurface):
      * tests/CCResourceProviderTest.cpp:
      (WebKit::CCResourceProviderTest::CCResourceProviderTest):
      * tests/CCTextureUpdateControllerTest.cpp:
      * tests/CCThreadedTest.cpp:
      (WebKitTests::TestHooks::createOutputSurface):
      * tests/CCThreadedTest.h:
      (WebKitTests::TestHooks::didRecreateOutputSurface):
      * tests/Canvas2DLayerBridgeTest.cpp:
      (Canvas2DLayerBridgeTest::fullLifecycleTest):
      * tests/FakeCCGraphicsContext.h:
      (WebKit::createFakeCCGraphicsContext):
      * tests/FakeCCLayerTreeHostClient.h:
      * tests/FakeWebCompositorOutputSurface.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCGraphicsContext.h.
      (WebKit):
      (FakeWebCompositorOutputSurface):
      (WebKit::FakeWebCompositorOutputSurface::create):
      (WebKit::FakeWebCompositorOutputSurface::FakeWebCompositorOutputSurface):
      * tests/LayerRendererChromiumTest.cpp:
      (LayerRendererChromiumTest::LayerRendererChromiumTest):
      (TEST):
      * tests/WebLayerTest.cpp:
      * tests/WebLayerTreeViewTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fc9dd4ad
  11. 08 Aug, 2012 2 commits
    • jamesr@google.com's avatar
      [chromium] Clean up WebKit.h and WebKitPlatformSupport.h includes in chromium/src · 29093d76
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=93539
      
      Reviewed by Adam Barth.
      
      Most of these files don't need either WebKit.h or WebKitPlatformSupport.h. Some need <public/Platform.h>, and
      some are relying on the forwarding headers. This updates includes to what is actually needed and points platform
      includes at <public/Foo.h> instead of "platform/Foo.h" where possible.
      
      * src/ApplicationCacheHostInternal.h:
      * src/AssociatedURLLoader.cpp:
      * src/AsyncFileSystemChromium.cpp:
      (WebCore::AsyncFileSystemChromium::AsyncFileSystemChromium):
      * src/BlobRegistryProxy.cpp:
      * src/ChromiumCurrentTime.cpp:
      * src/ChromiumOSRandomSource.cpp:
      * src/ChromiumThreading.cpp:
      * src/EditorClientImpl.cpp:
      * src/FrameLoaderClientImpl.cpp:
      * src/IDBFactoryBackendProxy.cpp:
      * src/LocalizedStrings.cpp:
      * src/PlatformMessagePortChannel.cpp:
      * src/WebCompositorInputHandlerImpl.cpp:
      * src/WebMediaPlayerClientImpl.cpp:
      * src/WebPluginContainerImpl.cpp:
      * src/WebViewImpl.cpp:
      * src/WebWorkerClientImpl.cpp:
      * src/WorkerAsyncFileSystemChromium.cpp:
      * src/WorkerFileWriterCallbacksBridge.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125108 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      29093d76
    • jamesr@google.com's avatar
      [chromium] Only use public Platform API in NonCompositedContentHost · c621fcb3
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=93423
      
      Reviewed by Adrienne Walker.
      
      Source/Platform:
      
      Adds setters to control text antialiasing and checkerboarding behavior for content layers.
      
      * chromium/public/WebContentLayer.h:
      (WebContentLayer):
      
      Source/WebCore:
      
      This renames the "NonCompositedContentHost" flag to "useLCDText", which is the primary purpose of the flag. We
      also use this flag to control whether we have border texels or not on the "root" layer, but I can't think of a
      clean name that encapsulates both behaviors.
      
      * platform/graphics/chromium/LayerChromium.cpp:
      (WebCore::LayerChromium::LayerChromium):
      (WebCore::LayerChromium::setUseLCDText):
      (WebCore::LayerChromium::pushPropertiesTo):
      * platform/graphics/chromium/LayerChromium.h:
      (LayerChromium):
      (WebCore::LayerChromium::useLCDText):
      * platform/graphics/chromium/TiledLayerChromium.cpp:
      (WebCore::TiledLayerChromium::setUseLCDText):
      * platform/graphics/chromium/TiledLayerChromium.h:
      * platform/graphics/chromium/cc/CCLayerImpl.cpp:
      (WebCore::CCLayerImpl::CCLayerImpl):
      * platform/graphics/chromium/cc/CCLayerImpl.h:
      (WebCore::CCLayerImpl::setUseLCDText):
      (WebCore::CCLayerImpl::useLCDText):
      (CCLayerImpl):
      
      Source/WebKit/chromium:
      
      Switches to using Web*Layer APIs in NonCompositedContentHost instead of reaching in to the LayerChromium and
      updates unit tests for the nonCompositedContent->useLCDText flag rename.
      
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      * src/WebContentLayer.cpp:
      (WebKit::WebContentLayer::setUseLCDText):
      (WebKit):
      (WebKit::WebContentLayer::setDrawCheckerboardForMissingTiles):
      * src/WebViewImpl.cpp:
      * tests/CCLayerImplTest.cpp:
      (WebCore::TEST):
      * tests/CCLayerTreeHostImplTest.cpp:
      * tests/LayerChromiumTest.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125088 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c621fcb3
  12. 07 Aug, 2012 2 commits
    • jamesr@google.com's avatar
      [chromium] Switch PlatformLayer typedef to Platform API type for PLATFORM(CHROMIUM) · b0e0bc82
      jamesr@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=93335
      
      Reviewed by Adrienne Walker.
      
      Source/Platform:
      
      Add APIs to control scrolling behavior on WebScrollableLayer.
      
      * chromium/public/WebScrollableLayer.h:
      (WebScrollableLayer):
      
      Source/WebCore:
      
      This converts the PlatformLayer typedef to WebKit::WebLayer (part of the chromium Platform API) for the
      Chromium port. This involves some odd const_cast<>s in places since cross-platform interfaces assume that
      PlatformLayer is a potentially heavy implementation class, but WebLayer is a thin smart pointer type.
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      (WebCore::createScrollbarLayer):
      (WebCore::ScrollingCoordinator::setScrollLayer):
      (WebCore::ScrollingCoordinator::setNonFastScrollableRegion):
      (WebCore::ScrollingCoordinator::setLayerIsContainerForFixedPositionLayers):
      (WebCore::ScrollingCoordinator::setLayerIsFixedToContainerLayer):
      * platform/graphics/PlatformLayer.h:
      (WebKit):
      (WebCore):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::Canvas2DLayerBridge::layer):
      * platform/graphics/chromium/Canvas2DLayerBridge.h:
      (Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBufferPrivate::layer):
      * platform/graphics/chromium/GraphicsLayerChromium.cpp:
      (WebCore::GraphicsLayerChromium::removeFromParent):
      (WebCore::GraphicsLayerChromium::setDrawsContent):
      (WebCore::GraphicsLayerChromium::setContentsVisible):
      (WebCore::GraphicsLayerChromium::setMaskLayer):
      (WebCore::GraphicsLayerChromium::setContentsToCanvas):
      (WebCore::GraphicsLayerChromium::setContentsToMedia):
      (WebCore::GraphicsLayerChromium::primaryLayer):
      (WebCore::GraphicsLayerChromium::platformLayer):
      (WebCore::GraphicsLayerChromium::updateChildList):
      * platform/graphics/chromium/GraphicsLayerChromium.h:
      (GraphicsLayerChromium):
      
      Source/WebKit/chromium:
      
      Update for new PlatformLayer typedef. This removes knowledge of WebCore::LayerChromium from all classes
      except for NonCompositedContentHost, which still punches through for a few minor APIs that I'll address
      in a separate patch.
      
      * src/NonCompositedContentHost.cpp:
      (WebKit::NonCompositedContentHost::NonCompositedContentHost):
      (WebKit::NonCompositedContentHost::setScrollLayer):
      (WebKit::NonCompositedContentHost::scrollLayer):
      (WebKit::NonCompositedContentHost::notifySyncRequired):
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::platformLayer):
      * src/WebMediaPlayerClientImpl.h:
      (WebMediaPlayerClientImpl):
      * src/WebPluginContainerImpl.cpp:
      (WebKit::WebPluginContainerImpl::platformLayer):
      * src/WebPluginContainerImpl.h:
      (WebCore):
      (WebPluginContainerImpl):
      * src/WebScrollableLayer.cpp:
      (WebKit::WebScrollableLayer::setNonFastScrollableRegion):
      (WebKit):
      (WebKit::WebScrollableLayer::setIsContainerForFixedPositionLayers):
      (WebKit::WebScrollableLayer::setFixedToContainerLayer):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::setRootGraphicsLayer):
      * tests/Canvas2DLayerBridgeTest.cpp:
      * tests/GraphicsLayerChromiumTest.cpp:
      (WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
      (WebKitTests::TEST_F):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124927 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b0e0bc82
    • jamesr@google.com's avatar
      [chromium] Use WebCompositor interface in Platform API instead of CCProxy to... · baf3c031
      jamesr@google.com authored
      [chromium] Use WebCompositor interface in Platform API instead of CCProxy to query threaded compositor status
      https://bugs.webkit.org/show_bug.cgi?id=93398
      
      Reviewed by Adam Barth.
      
      Source/Platform:
      
      Adds thread status query interfaces to WebCompositor for WebKit code that wants to know if we are in threaded
      mode.
      
      * chromium/public/WebCompositor.h:
      (WebCompositor):
      
      Source/WebCore:
      
      Converts non-compositor code that cares about threaded compositing status over to query WebCompositor instead of
      CCProxy.
      
      * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
      * platform/chromium/support/WebCompositorImpl.cpp:
      (WebKit):
      (WebKit::WebCompositor::threadingEnabled):
      (WebKit::WebCompositor::onCompositorThread):
      (WebKit::WebCompositorImpl::threadingEnabled):
      * platform/chromium/support/WebCompositorImpl.h:
      (WebCompositorImpl):
      * platform/graphics/chromium/Canvas2DLayerBridge.cpp:
      (WebCore::Canvas2DLayerBridge::Canvas2DLayerBridge):
      * platform/graphics/chromium/DrawingBufferChromium.cpp:
      (WebCore::DrawingBuffer::DrawingBuffer):
      
      Source/WebKit/chromium:
      
      Converts non-compositor code that cares about threaded compositing status over to query WebCompositor instead of
      CCProxy.
      
      * src/WebMediaPlayerClientImpl.cpp:
      (WebKit::WebMediaPlayerClientImpl::supportsType):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::composite):
      (WebKit::WebViewImpl::scheduleAnimation):
      (WebKit::WebViewImpl::scheduleComposite):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124925 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      baf3c031
  13. 06 Aug, 2012 1 commit
  14. 03 Aug, 2012 1 commit
  15. 02 Aug, 2012 2 commits
    • commit-queue@webkit.org's avatar
      [chromium] deviceViewportSize cleanup · dda76785
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=92794
      
      Patch by Alexandre Elias <aelias@google.com> on 2012-08-02
      Reviewed by Adrienne Walker.
      
      In the future, CSS layout size will become increasingly disassociated
      from physical device size, and it will become impossible to infer one
      from the other inside the compositor.  Therefore, this patch allows
      deviceViewportSize to be explicitly passed in by the outside client.
      
      I also renamed the existing viewportSize field to "layoutViewportSize"
      for clarity, and converted its uses to deviceViewportSize since
      that is more appropriate.
      
      I had to add some default-value scaffolding to WebLayerTreeView in
      order to avoid breaking ui/compositor.  We can delete it once that's
      updated.
      
      Source/Platform:
      
      * chromium/public/WebLayerTreeView.h:
      (WebLayerTreeView):
      
      Source/WebCore:
      
      No new tests (covered by existing tests).
      
      * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
      (WebCore::CCLayerTreeHost::finishCommitOnImplThread):
      (WebCore::CCLayerTreeHost::setViewportSize):
      (WebCore::CCLayerTreeHost::updateLayers):
      (WebCore::CCLayerTreeHost::setDeviceScaleFactor):
      * platform/graphics/chromium/cc/CCLayerTreeHost.h:
      (CCLayerTreeHost):
      (WebCore::CCLayerTreeHost::layoutViewportSize):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
      (WebCore::CCLayerTreeHostImpl::canDraw):
      (WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
      (WebCore::CCLayerTreeHostImpl::setViewportSize):
      (WebCore::CCLayerTreeHostImpl::setDeviceScaleFactor):
      (WebCore::CCLayerTreeHostImpl::updateMaxScrollPosition):
      * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
      (CCLayerTreeHostImpl):
      (WebCore::CCLayerTreeHostImpl::layoutViewportSize):
      
      Source/WebKit/chromium:
      
      * src/WebLayerTreeView.cpp:
      (WebKit::WebLayerTreeView::setViewportSize):
      (WebKit::WebLayerTreeView::layoutViewportSize):
      (WebKit):
      (WebKit::WebLayerTreeView::deviceViewportSize):
      (WebKit::WebLayerTreeView::setDeviceScaleFactor):
      * src/WebViewImpl.cpp:
      (WebKit::WebViewImpl::paint):
      (WebKit::WebViewImpl::updateLayerTreeViewport):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dda76785
    • scheib@chromium.org's avatar
      Remove old Pointer Lock API. · 03edde3b
      scheib@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=88892
      
      Reviewed by Adam Barth.
      
      Source/WebCore:
      
      Removing the old Pointer Lock API as one of the final cleanup
      changes for the Update to Fullscreen style locking Spec meta
      bug https://bugs.webkit.org/show_bug.cgi?id=84402.
      
      This change primarily removes idl, access in navigator,
      one event, and supporting infrastructure in page/PointerLock.
      
      In PointerLockController changes were already noted clearly with
      TODOs differentiating old and new api sections.
      
      Test: pointer-lock/pointerlockchange-event-on-lock-lost.html
      
      * WebCore.gypi:
      * dom/Element.cpp:
      (WebCore::Element::webkitRequestPointerLock):
      * dom/EventNames.h:
      (WebCore):
      * page/Navigator.cpp:
      * page/Navigator.h:
      (WebCore):
      (Navigator):
      * page/Navigator.idl:
      * page/PointerLock.cpp: Removed.
      * page/PointerLock.h: Removed.
      * page/PointerLock.idl: Removed.
      * page/PointerLockController.cpp:
      (WebCore::PointerLockController::requestPointerLock):
      (WebCore::PointerLockController::didAcquirePointerLock):
      (WebCore::PointerLockController::didNotAcquirePointerLock):
      (WebCore::PointerLockController::didLosePointerLock):
      * page/PointerLockController.h:
      (PointerLockController):
      
      Source/WebKit/chromium:
      
      * src/WebViewImpl.cpp:
          Removed #include to old API header.
      
      LayoutTests:
      
      Tests for old API removed, and most remaining tests required only small
      changes.
      
      * platform/chromium/fast/dom/navigator-detached-no-crash-expected.txt:
      * pointer-lock/lock-already-locked-expected.txt:
      * pointer-lock/lock-already-locked.html:
      * pointer-lock/lock-fail-responses-expected.txt: Removed.
      * pointer-lock/lock-fail-responses.html: Removed.
          This test only covered the old API. The related concept is tested
          for the new api in pointerlockchange-pointerlockerror-events.html.
      * pointer-lock/pointer-lock-api-expected.txt:
      * pointer-lock/pointer-lock-api.html:
      * pointer-lock/pointerlockchange-event-on-lock-lost-expected.txt: Added.
      * pointer-lock/pointerlockchange-event-on-lock-lost.html: Added.
      * pointer-lock/pointerlocklost-event-expected.txt: Removed.
      * pointer-lock/pointerlocklost-event.html: Removed.
          pointerlocklost-event.html renamed to pointerlockchange-event-on-lock-lost.html.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@124535 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      03edde3b