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

Unified Diff: third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinder.cpp

Issue 2389293002: Revert the removal of CompositingReasonOutOfFlowClipping (Closed)
Patch Set: Improve DCHECKs. Created 4 years, 2 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: third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinder.cpp
diff --git a/third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinder.cpp b/third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinder.cpp
index e2524a53ee27d3c7baa6e20ee749701427f52c2f..e702b1b52e050cc6127aaf1821ba983101cb3061 100644
--- a/third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinder.cpp
+++ b/third_party/WebKit/Source/core/layout/compositing/CompositingReasonFinder.cpp
@@ -41,8 +41,8 @@ CompositingReasons CompositingReasonFinder::directReasons(
if (RuntimeEnabledFeatures::slimmingPaintV2Enabled())
return CompositingReasonNone;
- ASSERT(potentialCompositingReasonsFromStyle(layer->layoutObject()) ==
- layer->potentialCompositingReasonsFromStyle());
+ DCHECK_EQ(potentialCompositingReasonsFromStyle(layer->layoutObject()),
+ layer->potentialCompositingReasonsFromStyle());
CompositingReasons styleDeterminedDirectCompositingReasons =
layer->potentialCompositingReasonsFromStyle() &
CompositingReasonComboAllDirectStyleDeterminedReasons;
@@ -54,7 +54,7 @@ CompositingReasons CompositingReasonFinder::directReasons(
// This information doesn't appear to be incorporated into CompositingReasons.
bool CompositingReasonFinder::requiresCompositingForScrollableFrame() const {
// Need this done first to determine overflow.
- ASSERT(!m_layoutView.needsLayout());
+ DCHECK(!m_layoutView.needsLayout());
if (isMainFrame())
return false;
@@ -101,7 +101,7 @@ CompositingReasonFinder::potentialCompositingReasonsFromStyle(
// If the implementation of createsGroup changes, we need to be aware of that
// in this part of code.
- ASSERT((layoutObject->isTransparent() || layoutObject->hasMask() ||
+ DCHECK((layoutObject->isTransparent() || layoutObject->hasMask() ||
layoutObject->hasFilterInducingProperty() || style.hasBlendMode()) ==
layoutObject->createsGroup());
@@ -127,7 +127,7 @@ CompositingReasonFinder::potentialCompositingReasonsFromStyle(
if (layoutObject->hasReflection())
reasons |= CompositingReasonReflectionWithCompositedDescendants;
- ASSERT(!(reasons & ~CompositingReasonComboAllStyleDeterminedReasons));
+ DCHECK(!(reasons & ~CompositingReasonComboAllStyleDeterminedReasons));
return reasons;
}
@@ -145,6 +145,9 @@ CompositingReasons CompositingReasonFinder::nonStyleDeterminedDirectReasons(
CompositingReasons directReasons = CompositingReasonNone;
LayoutObject* layoutObject = layer->layoutObject();
+ if (m_compositingTriggers & OverflowScrollTrigger && layer->clipParent())
+ directReasons |= CompositingReasonOutOfFlowClipping;
+
if (layer->needsCompositedScrolling())
directReasons |= CompositingReasonOverflowScrollingTouch;
@@ -163,7 +166,7 @@ CompositingReasons CompositingReasonFinder::nonStyleDeterminedDirectReasons(
directReasons |= layoutObject->additionalCompositingReasons();
- ASSERT(!(directReasons & CompositingReasonComboAllStyleDeterminedReasons));
+ DCHECK(!(directReasons & CompositingReasonComboAllStyleDeterminedReasons));
return directReasons;
}

Powered by Google App Engine
This is Rietveld 408576698