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

Unified Diff: Source/core/rendering/RenderObject.cpp

Issue 240253007: Don't always repaint on zIndex change (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 6 years, 8 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
Index: Source/core/rendering/RenderObject.cpp
diff --git a/Source/core/rendering/RenderObject.cpp b/Source/core/rendering/RenderObject.cpp
index e50566e9004ec595792874483692fa13c1e9deb4..92e9338c7ef31272cd4e1c24f03e870a52fe7faa 100644
--- a/Source/core/rendering/RenderObject.cpp
+++ b/Source/core/rendering/RenderObject.cpp
@@ -1903,15 +1903,16 @@ StyleDifference RenderObject::adjustStyleDifference(StyleDifference diff, unsign
}
}
- // If opacity or filters changed, and the layer does not paint into its own separate backing, then we need to repaint (also
+ // If opacity or zIndex changed, and the layer does not paint into its own separate backing, then we need to repaint (also
// ignoring text nodes)
- if (contextSensitiveProperties & ContextSensitivePropertyOpacity && !diff.needsLayout()) {
+ if ((contextSensitiveProperties & (ContextSensitivePropertyOpacity | ContextSensitivePropertyZIndex)) && !diff.needsLayout()) {
if (!isText() && (!hasLayer() || !toRenderLayerModelObject(this)->layer()->hasDirectReasonsForCompositing()))
diff.setNeedsRepaintLayer();
else
diff.setNeedsRecompositeLayer();
}
+ // If filter changed, and the layer does not paint into its own separate backing or it paints with filters, then we need to repaint.
if ((contextSensitiveProperties & ContextSensitivePropertyFilter) && hasLayer() && !diff.needsLayout()) {
RenderLayer* layer = toRenderLayerModelObject(this)->layer();
if (!layer->hasDirectReasonsForCompositing() || layer->paintsWithFilters())

Powered by Google App Engine
This is Rietveld 408576698