Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1417)

Unified Diff: Source/core/rendering/compositing/RenderLayerCompositor.cpp

Issue 336493004: Removing a RenderLayer's CLM should trigger a repaint (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix test failure Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « LayoutTests/compositing/squashing/squashed-layer-loses-graphicslayer-expected.txt ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/rendering/compositing/RenderLayerCompositor.cpp
diff --git a/Source/core/rendering/compositing/RenderLayerCompositor.cpp b/Source/core/rendering/compositing/RenderLayerCompositor.cpp
index 81603f801f981f1f2d05c5322fefc8b5cb3b13c7..bea0a6d2e8e8b6340b7996aca6cc34f7f903c117 100644
--- a/Source/core/rendering/compositing/RenderLayerCompositor.cpp
+++ b/Source/core/rendering/compositing/RenderLayerCompositor.cpp
@@ -480,8 +480,14 @@ bool RenderLayerCompositor::updateLayerIfViewportConstrained(RenderLayer* layer)
// See crbug.com/383191 for a list of tests that fail if this method is removed.
void RenderLayerCompositor::applyUpdateLayerCompositingStateChickenEggHacks(RenderLayer* layer, CompositingStateTransitionType compositedLayerUpdate)
{
- if (compositedLayerUpdate != NoCompositingStateChange)
- allocateOrClearCompositedLayerMapping(layer, compositedLayerUpdate);
+ if (compositedLayerUpdate != NoCompositingStateChange) {
+ bool compositedLayerMappingChanged = allocateOrClearCompositedLayerMapping(layer, compositedLayerUpdate);
+ if (compositedLayerMappingChanged) {
+ if (layer->parent())
chrishtr 2014/06/13 15:45:38 Please add a comment here about why the layer->par
ajuma 2014/06/13 18:03:50 Done.
+ layer->repainter().computeRepaintRectsIncludingNonCompositingDescendants();
ajuma 2014/06/13 14:54:52 I also needed to make this call conditional on hav
+ repaintOnCompositingChange(layer);
+ }
+ }
}
void RenderLayerCompositor::updateLayerCompositingState(RenderLayer* layer, UpdateLayerCompositingStateOptions options)
« no previous file with comments | « LayoutTests/compositing/squashing/squashed-layer-loses-graphicslayer-expected.txt ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698