Index: Source/core/rendering/compositing/RenderLayerCompositor.cpp |
diff --git a/Source/core/rendering/compositing/RenderLayerCompositor.cpp b/Source/core/rendering/compositing/RenderLayerCompositor.cpp |
index 95204d6cc37f3a1614d8ca9eb6273478237754e3..009eadc5e0be10c3d5bc748ac82fe64d875d3241 100644 |
--- a/Source/core/rendering/compositing/RenderLayerCompositor.cpp |
+++ b/Source/core/rendering/compositing/RenderLayerCompositor.cpp |
@@ -976,6 +976,7 @@ void RenderLayerCompositor::ensureRootLayer() |
if (expectedAttachment == m_rootLayerAttachment) |
return; |
+ Settings* settings = m_renderView.document().settings(); |
if (!m_rootContentLayer) { |
m_rootContentLayer = GraphicsLayer::create(graphicsLayerFactory(), this); |
IntRect overflowRect = m_renderView.pixelSnappedLayoutOverflowRect(); |
@@ -983,8 +984,11 @@ void RenderLayerCompositor::ensureRootLayer() |
m_rootContentLayer->setPosition(FloatPoint()); |
m_rootContentLayer->setOwnerNodeId(InspectorNodeIds::idForNode(m_renderView.generatingNode())); |
- // Need to clip to prevent transformed content showing outside this frame |
- m_rootContentLayer->setMasksToBounds(true); |
+ // FIXME: with rootLayerScrolls, we probably don't even need m_rootContentLayer? |
+ if (!(settings && settings->rootLayerScrolls())) { |
+ // Need to clip to prevent transformed content showing outside this frame |
+ m_rootContentLayer->setMasksToBounds(true); |
+ } |
} |
if (!m_overflowControlsHostLayer) { |