| Index: Source/core/paint/LayoutObjectDrawingRecorder.h
|
| diff --git a/Source/core/paint/LayoutObjectDrawingRecorder.h b/Source/core/paint/LayoutObjectDrawingRecorder.h
|
| index 0328359a285a60a194dad495ddea773f5c280f3d..81fba8cc836e2882f4a809e9b7af59a975ff9123 100644
|
| --- a/Source/core/paint/LayoutObjectDrawingRecorder.h
|
| +++ b/Source/core/paint/LayoutObjectDrawingRecorder.h
|
| @@ -53,7 +53,7 @@ public:
|
|
|
| LayoutObjectDrawingRecorder(GraphicsContext& context, const LayoutObject& layoutObject, DisplayItem::Type displayItemType, const FloatRect& clip, const LayoutPoint& paintOffset)
|
| {
|
| - updatePaintOffsetIfNeeded(context.displayItemList(), layoutObject.displayItemClient(), paintOffset);
|
| + updatePaintOffsetIfNeeded(context.displayItemList(), layoutObject, paintOffset);
|
| // We may paint a delayed-invalidation object before it's actually invalidated.
|
| if (layoutObject.fullPaintInvalidationReason() == PaintInvalidationDelayedFull)
|
| m_cacheSkipper.emplace(context);
|
| @@ -74,7 +74,7 @@ public:
|
|
|
| LayoutObjectDrawingRecorder(GraphicsContext& context, const InlineBox& inlineBox, DisplayItem::Type displayItemType, const FloatRect& clip, const LayoutPoint& paintOffset)
|
| {
|
| - updatePaintOffsetIfNeeded(context.displayItemList(), inlineBox.displayItemClient(), paintOffset);
|
| + updatePaintOffsetIfNeeded(context.displayItemList(), inlineBox, paintOffset);
|
| m_drawingRecorder.emplace(context, inlineBox, displayItemType, clip);
|
| }
|
|
|
| @@ -92,17 +92,17 @@ public:
|
| #endif
|
|
|
| private:
|
| - static void updatePaintOffsetIfNeeded(DisplayItemList* displayItemList, DisplayItemClient displayItemClient, const LayoutPoint& paintOffset)
|
| + static void updatePaintOffsetIfNeeded(DisplayItemList* displayItemList, const DisplayItemClientWrapper& client, const LayoutPoint& paintOffset)
|
| {
|
| if (!RuntimeEnabledFeatures::slimmingPaintV2Enabled())
|
| return;
|
|
|
| // TODO(pdr): The paint offset cache should be stored on LayoutObject but is temporarily on the DisplayItemList.
|
| - if (!displayItemList->paintOffsetIsUnchanged(displayItemClient, paintOffset)) {
|
| - displayItemList->recordPaintOffset(displayItemClient, paintOffset);
|
| - displayItemList->invalidatePaintOffset(displayItemClient);
|
| + if (!displayItemList->paintOffsetIsUnchanged(client.displayItemClient(), paintOffset)) {
|
| + displayItemList->recordPaintOffset(client.displayItemClient(), paintOffset);
|
| + displayItemList->invalidatePaintOffset(client);
|
| } else {
|
| - ASSERT(!displayItemList->paintOffsetWasInvalidated(displayItemClient) || !displayItemList->clientCacheIsValid(displayItemClient));
|
| + ASSERT(!displayItemList->paintOffsetWasInvalidated(client.displayItemClient()) || !displayItemList->clientCacheIsValid(client.displayItemClient()));
|
| }
|
| }
|
|
|
|
|