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

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

Issue 2565073002: Implement the algorithm to test merging and overlap in PaintArtifactCompositor. (Closed)
Patch Set: none Created 4 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef PaintController_h 5 #ifndef PaintController_h
6 #define PaintController_h 6 #define PaintController_h
7 7
8 #include "platform/PlatformExport.h" 8 #include "platform/PlatformExport.h"
9 #include "platform/RuntimeEnabledFeatures.h" 9 #include "platform/RuntimeEnabledFeatures.h"
10 #include "platform/geometry/IntRect.h" 10 #include "platform/geometry/IntRect.h"
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 : m_currentPaintArtifact.getDisplayItemList() 235 : m_currentPaintArtifact.getDisplayItemList()
236 .usedCapacityInBytes()); 236 .usedCapacityInBytes());
237 } 237 }
238 } 238 }
239 239
240 // Set new item state (cache skipping, etc) for a new item. 240 // Set new item state (cache skipping, etc) for a new item.
241 void processNewItem(DisplayItem&); 241 void processNewItem(DisplayItem&);
242 DisplayItem& moveItemFromCurrentListToNewList(size_t); 242 DisplayItem& moveItemFromCurrentListToNewList(size_t);
243 243
244 void showDebugDataInternal(bool showPictures) const; 244 void showDebugDataInternal(bool showPictures) const;
245 String displayItemListAsDebugString(const DisplayItemList&,
246 bool showPictures) const;
247 245
248 // Maps clients to indices of display items or chunks of each client. 246 // Maps clients to indices of display items or chunks of each client.
249 using IndicesByClientMap = HashMap<const DisplayItemClient*, Vector<size_t>>; 247 using IndicesByClientMap = HashMap<const DisplayItemClient*, Vector<size_t>>;
250 248
251 static size_t findMatchingItemFromIndex(const DisplayItem::Id&, 249 static size_t findMatchingItemFromIndex(const DisplayItem::Id&,
252 const IndicesByClientMap&, 250 const IndicesByClientMap&,
253 const DisplayItemList&); 251 const DisplayItemList&);
254 static void addItemToIndexIfNeeded(const DisplayItem&, 252 static void addItemToIndexIfNeeded(const DisplayItem&,
255 size_t index, 253 size_t index,
256 IndicesByClientMap&); 254 IndicesByClientMap&);
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
379 377
380 #if CHECK_DISPLAY_ITEM_CLIENT_ALIVENESS 378 #if CHECK_DISPLAY_ITEM_CLIENT_ALIVENESS
381 // A stack recording subsequence clients that are currently painting. 379 // A stack recording subsequence clients that are currently painting.
382 Vector<const DisplayItemClient*> m_currentSubsequenceClients; 380 Vector<const DisplayItemClient*> m_currentSubsequenceClients;
383 #endif 381 #endif
384 }; 382 };
385 383
386 } // namespace blink 384 } // namespace blink
387 385
388 #endif // PaintController_h 386 #endif // PaintController_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698