| Index: Source/platform/graphics/paint/DisplayItemList.cpp
|
| diff --git a/Source/platform/graphics/paint/DisplayItemList.cpp b/Source/platform/graphics/paint/DisplayItemList.cpp
|
| index deb4b52840e4d7c1ab8bdfb835978cd4fb69692a..49e12ea2cd432371e3a05b6557abd0a37dcbf2af 100644
|
| --- a/Source/platform/graphics/paint/DisplayItemList.cpp
|
| +++ b/Source/platform/graphics/paint/DisplayItemList.cpp
|
| @@ -6,7 +6,6 @@
|
| #include "platform/graphics/paint/DisplayItemList.h"
|
|
|
| #include "platform/NotImplemented.h"
|
| -#include "platform/RuntimeEnabledFeatures.h"
|
| #include "platform/TraceEvent.h"
|
| #include "platform/graphics/paint/DrawingDisplayItem.h"
|
|
|
| @@ -112,7 +111,15 @@ void DisplayItemList::endScope()
|
| endSkippingCache();
|
| }
|
|
|
| -void DisplayItemList::invalidate(DisplayItemClient client)
|
| +void DisplayItemList::invalidate(const DisplayItemClientWrapper& client)
|
| +{
|
| + invalidateUntracked(client.displayItemClient());
|
| +
|
| + if (RuntimeEnabledFeatures::slimmingPaintV2Enabled() && m_trackedPaintInvalidationObjects)
|
| + m_trackedPaintInvalidationObjects->append(client.debugName());
|
| +}
|
| +
|
| +void DisplayItemList::invalidateUntracked(DisplayItemClient client)
|
| {
|
| ASSERT(RuntimeEnabledFeatures::slimmingPaintEnabled());
|
| // Can only be called during layout/paintInvalidation, not during painting.
|
| @@ -129,6 +136,9 @@ void DisplayItemList::invalidateAll()
|
| m_currentDisplayItems.clear();
|
| m_validlyCachedClients.clear();
|
| m_validlyCachedClientsDirty = false;
|
| +
|
| + if (RuntimeEnabledFeatures::slimmingPaintV2Enabled() && m_trackedPaintInvalidationObjects)
|
| + m_trackedPaintInvalidationObjects->append("##ALL##");
|
| }
|
|
|
| bool DisplayItemList::clientCacheIsValid(DisplayItemClient client) const
|
|
|