Index: Source/core/layout/LayoutBlock.cpp |
diff --git a/Source/core/layout/LayoutBlock.cpp b/Source/core/layout/LayoutBlock.cpp |
index 00fd49ac48a81fc9340041380d47c71dad147a54..6ef5c02944e8cc1486df25bbf66c931cc3b4f75e 100644 |
--- a/Source/core/layout/LayoutBlock.cpp |
+++ b/Source/core/layout/LayoutBlock.cpp |
@@ -368,13 +368,23 @@ inline static void invalidateDisplayItemClientForStartOfContinuationsIfNeeded(co |
startOfContinuations->invalidateDisplayItemClient(*startOfContinuations); |
} |
-void LayoutBlock::invalidateDisplayItemClients(const LayoutBoxModelObject& paintInvalidationContainer) const |
+void LayoutBlock::invalidateDisplayItemClients(const LayoutBoxModelObject& paintInvalidationContainer) |
{ |
LayoutBox::invalidateDisplayItemClients(paintInvalidationContainer); |
ASSERT(RuntimeEnabledFeatures::slimmingPaintEnabled()); |
invalidateDisplayItemClientForStartOfContinuationsIfNeeded(*this); |
} |
+bool LayoutBlock::clearRepaintFlagsOfSubtrees() |
+{ |
+ bool result = LayoutBox::clearRepaintFlagsOfSubtrees(); |
+ if (TrackedLayoutBoxListHashSet* positionedObjects = this->positionedObjects()) { |
+ for (auto o : *positionedObjects) |
+ result &= o->clearRepaintFlagsRecursively(); |
+ } |
+ return result; |
+} |
+ |
void LayoutBlock::addChildIgnoringContinuation(LayoutObject* newChild, LayoutObject* beforeChild) |
{ |
if (beforeChild && beforeChild->parent() != this) { |