diff options
Diffstat (limited to 'WebCore/rendering/RenderLayerCompositor.cpp')
-rw-r--r-- | WebCore/rendering/RenderLayerCompositor.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/WebCore/rendering/RenderLayerCompositor.cpp b/WebCore/rendering/RenderLayerCompositor.cpp index fe0d4e8..46278a2 100644 --- a/WebCore/rendering/RenderLayerCompositor.cpp +++ b/WebCore/rendering/RenderLayerCompositor.cpp @@ -643,9 +643,11 @@ void RenderLayerCompositor::computeCompositingRequirements(RenderLayer* layer, O } } - // If we just entered compositing mode, the root will have become composited. - if (layer->isRootLayer() && inCompositingMode()) - willBeComposited = true; + // If we just entered compositing mode, the root will have become composited (as long as accelerated compositing is enabled). + if (layer->isRootLayer()) { + if (inCompositingMode() && m_hasAcceleratedCompositing) + willBeComposited = true; + } ASSERT(willBeComposited == needsToBeComposited(layer)); @@ -1337,8 +1339,8 @@ bool RenderLayerCompositor::requiresCompositingForIFrame(RenderObject* renderer) bool RenderLayerCompositor::requiresCompositingForAnimation(RenderObject* renderer) const { if (AnimationController* animController = renderer->animation()) { - return (animController->isAnimatingPropertyOnRenderer(renderer, CSSPropertyOpacity) && inCompositingMode()) - || animController->isAnimatingPropertyOnRenderer(renderer, CSSPropertyWebkitTransform); + return (animController->isRunningAnimationOnRenderer(renderer, CSSPropertyOpacity) && inCompositingMode()) + || animController->isRunningAnimationOnRenderer(renderer, CSSPropertyWebkitTransform); } return false; } |