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

Unified Diff: third_party/WebKit/Source/platform/graphics/paint/PaintController.h

Issue 1484163002: Raster display item lists via a visual rect RTree. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Sync to head. Created 5 years 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/platform/graphics/paint/PaintController.h
diff --git a/third_party/WebKit/Source/platform/graphics/paint/PaintController.h b/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
index b62d5391553bd8bbad4b835d8e28fe7bf7d89b18..2c388cc4735b6daefd7af30085138b972a3c0fe5 100644
--- a/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
+++ b/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
@@ -123,6 +123,9 @@ public:
const DisplayItemList& displayItemList() const { return paintArtifact().displayItemList(); }
const Vector<PaintChunk>& paintChunks() const { return paintArtifact().paintChunks(); }
+ typedef WTF::HashMap<DisplayItemClient, IntRect> DisplayItemRectMap;
esprehn 2015/12/08 19:58:31 Doesn't this approach the size of the layout tree
wkorman 2015/12/08 20:55:10 I believe you are correct. We obviously won't enab
Xianzhu 2015/12/09 17:09:27 FYI I have converted DisplayItemClient to an inter
+ const DisplayItemRectMap& displayItemVisualRects() const { return m_displayItemInvalidationRects; }
+
bool clientCacheIsValid(DisplayItemClient) const;
bool cacheIsEmpty() const { return m_currentPaintArtifact.isEmpty(); }
@@ -238,6 +241,8 @@ private:
HashSet<DisplayItemClient> m_clientsWithPaintOffsetInvalidations;
#endif
+ DisplayItemRectMap m_displayItemInvalidationRects;
+
// Allow display item construction to be disabled to isolate the costs of construction
// in performance metrics.
bool m_constructionDisabled;

Powered by Google App Engine
This is Rietveld 408576698