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

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

Issue 204843002: Reduce invalidation on children-needs-layout containers (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 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/RenderBox.cpp
diff --git a/Source/core/rendering/RenderBox.cpp b/Source/core/rendering/RenderBox.cpp
index 4b2f02d7664c8d86ef8f37b545f5686bf08c7de8..61ad60a27846e070af6537bacb44b6e7235df2d1 100644
--- a/Source/core/rendering/RenderBox.cpp
+++ b/Source/core/rendering/RenderBox.cpp
@@ -294,6 +294,9 @@ void RenderBox::updateFromStyle()
setHasTransform(styleToUse->hasTransformRelatedProperty());
setHasReflection(styleToUse->boxReflect());
+
+ bool hasEffectVisualOverflow = style()->hasVisualOverflowingEffect() || style()->hasOutline();
+ setHasNothingToPaint(!style()->hasBorder() && !style()->hasBackground() && !hasEffectVisualOverflow);
}
void RenderBox::layout()
@@ -4160,7 +4163,7 @@ void RenderBox::markForPaginationRelayoutIfNeeded(SubtreeLayoutScope& layoutScop
void RenderBox::addVisualEffectOverflow()
{
- if (!style()->boxShadow() && !style()->hasBorderImageOutsets())
+ if (!style()->hasVisualOverflowingEffect())
return;
bool isFlipped = style()->isFlippedBlocksWritingMode();

Powered by Google App Engine
This is Rietveld 408576698