| Index: third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
|
| diff --git a/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp b/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
|
| index c05c19ddc568ecb1fb37e13496fe2a91266e04ac..fef4908c8abc5b4074c9e4ca0ed2cffd3ad1bc20 100644
|
| --- a/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
|
| +++ b/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
|
| @@ -674,23 +674,31 @@ bool PaintLayerCompositor::attachFrameContentLayersToIframeLayer(LayoutPart* lay
|
| return true;
|
| }
|
|
|
| -static void fullyInvalidatePaintRecursive(PaintLayer* layer)
|
| +static void fullyInvalidatePaintRecursive(PaintLayer* layer, bool changeDirectlyCompositedImages)
|
| {
|
| if (layer->compositingState() == PaintsIntoOwnBacking) {
|
| layer->compositedLayerMapping()->setContentsNeedDisplay();
|
| layer->compositedLayerMapping()->setSquashingContentsNeedDisplay();
|
| + if (changeDirectlyCompositedImages)
|
| + layer->compositedLayerMapping()->contentChanged(ImageChanged);
|
| }
|
|
|
| for (PaintLayer* child = layer->firstChild(); child; child = child->nextSibling())
|
| - fullyInvalidatePaintRecursive(child);
|
| + fullyInvalidatePaintRecursive(child, changeDirectlyCompositedImages);
|
| }
|
|
|
| -void PaintLayerCompositor::fullyInvalidatePaint()
|
| +void PaintLayerCompositor::fullyInvalidatePaint(bool changeDirectlyCompositedImages)
|
| {
|
| // We're walking all compositing layers and invalidating them, so there's
|
| // no need to have up-to-date compositing state.
|
| DisableCompositingQueryAsserts disabler;
|
| - fullyInvalidatePaintRecursive(rootLayer());
|
| + fullyInvalidatePaintRecursive(rootLayer(), changeDirectlyCompositedImages);
|
| +
|
| + if (!changeDirectlyCompositedImages)
|
| + return;
|
| +
|
| + // Setup for, and schedule a full root layer repaint via Page::animator().
|
| + rootLayer()->setNeedsCompositingInputsUpdate();
|
| }
|
|
|
| PaintLayer* PaintLayerCompositor::rootLayer() const
|
|
|