-
vangelis@chromium.org authored
Reviewed by Simon Fraser. Provide more fine grained control to ports over when to turn on accelerated compositing. https://bugs.webkit.org/show_bug.cgi?id=49998 As part of this change, the old hasAcceleratedCompositing method on the ChromeClient has now been replaced by allowedCompositingTriggers which returns a bitfield of all the features which can trigger the compositor. * src/ChromeClientImpl.cpp: (WebKit::ChromeClientImpl::allowedCompositingTriggers): * src/ChromeClientImpl.h: 2010-11-29 Vangelis Kokkevis <vangelis@chromium.org> Reviewed by Simon Fraser. Provide more fine grained control to ports over when to turn on accelerated compositing. https://bugs.webkit.org/show_bug.cgi?id=49998 As part of this change, the old hasAcceleratedCompositing method on the ChromeClient has now been replaced by allowedCompositingTriggers which returns a bitfield of all the features which can trigger the compositor. * WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::allowedCompositingTriggers): * WebCoreSupport/ChromeClientQt.h: 2010-11-30 Vangelis Kokkevis <vangelis@chromium.org> Reviewed by Simon Fraser. Provide more fine grained control to ports over when to turn on accelerated compositing. https://bugs.webkit.org/show_bug.cgi?id=49998 The RenderLayerCompositor now checks with the chrome client whether 3d transforms, video, plugins, canvas and animation require switching over to the composited path. Layers that overlap composited content will still turn into composited layers regardless of the setting. * css/MediaQueryEvaluator.cpp: (WebCore::transform_3dMediaFeatureEval): * page/ChromeClient.h: (WebCore::ChromeClient::allowedCompositingTriggers): * rendering/RenderLayer.cpp: (WebCore::RenderLayer::canRender3DTransforms): (WebCore::RenderLayer::updateTransform): (WebCore::RenderLayer::currentTransform): * rendering/RenderLayer.h: * rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateLayerTransform): * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::RenderLayerCompositor): (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags): (WebCore::RenderLayerCompositor::canRender3DTransforms): (WebCore::RenderLayerCompositor::requiresCompositingLayer): (WebCore::RenderLayerCompositor::requiresCompositingForTransform): (WebCore::RenderLayerCompositor::requiresCompositingForVideo): (WebCore::RenderLayerCompositor::requiresCompositingForCanvas): (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): * rendering/RenderLayerCompositor.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@72954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
1bbe613e