| Index: third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositor.cpp
|
| diff --git a/third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositor.cpp b/third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositor.cpp
|
| index 7ff170dbc7cb61409f2d0320b2f5d55177482306..c0bb2487871681f4435642e864afd0e61bae7d1f 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositor.cpp
|
| +++ b/third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositor.cpp
|
| @@ -597,9 +597,9 @@ bool PaintArtifactCompositor::mightOverlap(
|
| const PaintChunk& paintChunk,
|
| const PendingLayer& candidatePendingLayer,
|
| GeometryMapper& geometryMapper) {
|
| - PropertyTreeState rootPropertyTreeState(
|
| - TransformPaintPropertyNode::root(), ClipPaintPropertyNode::root(),
|
| - EffectPaintPropertyNode::root(), ScrollPaintPropertyNode::root());
|
| + PropertyTreeState rootPropertyTreeState(TransformPaintPropertyNode::root(),
|
| + ClipPaintPropertyNode::root(),
|
| + EffectPaintPropertyNode::root());
|
|
|
| FloatRect paintChunkScreenVisualRect =
|
| geometryMapper.localToAncestorVisualRect(
|
| @@ -708,10 +708,9 @@ void PaintArtifactCompositor::update(
|
| paintArtifact, pendingLayer, layerOffset, newContentLayerClients,
|
| rasterChunkInvalidations, storeDebugInfo, geometryMapper);
|
|
|
| - int transformId = propertyTreeManager.ensureCompositorTransformNode(
|
| - pendingLayer.propertyTreeState.transform());
|
| - int scrollId = propertyTreeManager.ensureCompositorScrollNode(
|
| - pendingLayer.propertyTreeState.scroll());
|
| + const auto* transform = pendingLayer.propertyTreeState.transform();
|
| + int transformId =
|
| + propertyTreeManager.ensureCompositorTransformNode(transform);
|
| int clipId = propertyTreeManager.ensureCompositorClipNode(
|
| pendingLayer.propertyTreeState.clip());
|
| int effectId = propertyTreeManager.switchToEffectNode(
|
| @@ -726,7 +725,10 @@ void PaintArtifactCompositor::update(
|
| layer->SetTransformTreeIndex(transformId);
|
| layer->SetClipTreeIndex(clipId);
|
| layer->SetEffectTreeIndex(effectId);
|
| - layer->SetScrollTreeIndex(scrollId);
|
| + if (const auto* scrollNode = transform->scrollNode()) {
|
| + layer->SetScrollTreeIndex(
|
| + propertyTreeManager.ensureCompositorScrollNode(scrollNode));
|
| + }
|
|
|
| layer->SetShouldCheckBackfaceVisibility(pendingLayer.backfaceHidden);
|
|
|
|
|