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

Unified Diff: third_party/WebKit/Source/core/layout/LayoutObject.h

Issue 1763343002: Fix SubtreeLayoutScope not to schedule relayout (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2623
Patch Set: Created 4 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: third_party/WebKit/Source/core/layout/LayoutObject.h
diff --git a/third_party/WebKit/Source/core/layout/LayoutObject.h b/third_party/WebKit/Source/core/layout/LayoutObject.h
index ccf060bcbe63c7925c79cfe148bfb0517e26cbd9..6b0551810cf9d4af150176d48f1755ce3ea0ab63 100644
--- a/third_party/WebKit/Source/core/layout/LayoutObject.h
+++ b/third_party/WebKit/Source/core/layout/LayoutObject.h
@@ -788,7 +788,8 @@ public:
Element* offsetParent() const;
- void markContainerChainForLayout(bool scheduleRelayout = true, SubtreeLayoutScope* = nullptr);
+ void markContainerChainForLayout(bool scheduleRelayout = true);
+ void markContainerChainForLayout(SubtreeLayoutScope*);
void setNeedsLayout(LayoutInvalidationReasonForTracing, MarkingBehavior = MarkContainerChain, SubtreeLayoutScope* = nullptr);
void setNeedsLayoutAndFullPaintInvalidation(LayoutInvalidationReasonForTracing, MarkingBehavior = MarkContainerChain, SubtreeLayoutScope* = nullptr);
void clearNeedsLayout();
@@ -1532,6 +1533,8 @@ private:
void setNeedsOverflowRecalcAfterStyleChange();
+ void markContainerChainForLayout(bool scheduleRelayout, SubtreeLayoutScope*);
+
// FIXME: This should be 'markContaingBoxChainForOverflowRecalc when we make LayoutBox
// recomputeOverflow-capable. crbug.com/437012 and crbug.com/434700.
inline void markContainingBlocksForOverflowRecalc();
@@ -1935,7 +1938,7 @@ inline void LayoutObject::setNeedsLayout(LayoutInvalidationReasonForTracing reas
"data",
InspectorLayoutInvalidationTrackingEvent::data(this, reason));
if (markParents == MarkContainerChain && (!layouter || layouter->root() != this))
- markContainerChainForLayout(true, layouter);
+ markContainerChainForLayout(layouter);
}
}
@@ -1972,7 +1975,7 @@ inline void LayoutObject::setChildNeedsLayout(MarkingBehavior markParents, Subtr
setNormalChildNeedsLayout(true);
// FIXME: Replace MarkOnlyThis with the SubtreeLayoutScope code path and remove the MarkingBehavior argument entirely.
if (!alreadyNeededLayout && markParents == MarkContainerChain && (!layouter || layouter->root() != this))
- markContainerChainForLayout(true, layouter);
+ markContainerChainForLayout(layouter);
}
inline void LayoutObject::setNeedsPositionedMovementLayout()

Powered by Google App Engine
This is Rietveld 408576698