| Index: Source/core/rendering/compositing/CompositedLayerMapping.cpp
|
| diff --git a/Source/core/rendering/compositing/CompositedLayerMapping.cpp b/Source/core/rendering/compositing/CompositedLayerMapping.cpp
|
| index ccd7e6e7b138b5529efe4faef748dc126c5a7f31..d3191f074678258d3e04db956e480a157b3d4016 100644
|
| --- a/Source/core/rendering/compositing/CompositedLayerMapping.cpp
|
| +++ b/Source/core/rendering/compositing/CompositedLayerMapping.cpp
|
| @@ -236,6 +236,8 @@ void CompositedLayerMapping::createPrimaryGraphicsLayer()
|
| updateLayerBlendMode(renderer()->style());
|
| updateIsRootForIsolatedGroup();
|
| }
|
| +
|
| + updateScrollBlocksOn(renderer()->style());
|
| }
|
|
|
| void CompositedLayerMapping::destroyGraphicsLayers()
|
| @@ -295,6 +297,18 @@ void CompositedLayerMapping::updateIsRootForIsolatedGroup()
|
| m_graphicsLayer->setIsRootForIsolatedGroup(isolate);
|
| }
|
|
|
| +void CompositedLayerMapping::updateScrollBlocksOn(const RenderStyle* style)
|
| +{
|
| + // Note that blink determines the default scroll blocking policy, even
|
| + // when the scroll-blocks-on CSS feature isn't enabled.
|
| + WebScrollBlocksOn blockingMode = WebScrollBlocksOnStartTouch | WebScrollBlocksOnWheelEvent;
|
| +
|
| + if (RuntimeEnabledFeatures::cssScrollBlocksOnEnabled())
|
| + blockingMode = style->scrollBlocksOn();
|
| +
|
| + m_graphicsLayer->setScrollBlocksOn(blockingMode);
|
| +}
|
| +
|
| void CompositedLayerMapping::updateContentsOpaque()
|
| {
|
| ASSERT(m_isMainFrameRenderViewLayer || !m_backgroundLayer);
|
| @@ -715,6 +729,8 @@ void CompositedLayerMapping::updateGraphicsLayerGeometry(const RenderLayer* comp
|
| updateScrollParent(compositor()->preferCompositingToLCDTextEnabled() ? m_owningLayer.scrollParent() : 0);
|
| registerScrollingLayers();
|
|
|
| + updateScrollBlocksOn(renderer()->style());
|
| +
|
| updateCompositingReasons();
|
| }
|
|
|
|
|