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

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

Issue 2812103002: Don't allow the composited-alpha folding optimization to cross subsequences (Closed)
Patch Set: none Created 3 years, 8 months 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 10637ce2a8854e94bd35cd9f1e858cccbabf29bc..5bfc86ec8e4156d37fca6adf2b74337b78eb6f6e 100644
--- a/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
+++ b/third_party/WebKit/Source/platform/graphics/paint/PaintController.h
@@ -209,6 +209,8 @@ class PLATFORM_EXPORT PaintController {
void EndSubsequence() { current_subsequence_clients_.pop_back(); }
#endif
+ bool LastDisplayItemIsSubsequenceEnd() const;
+
protected:
PaintController()
: new_display_item_list_(0),
@@ -226,7 +228,8 @@ class PLATFORM_EXPORT PaintController {
num_indexed_items_(0),
#endif
under_invalidation_checking_begin_(0),
- under_invalidation_checking_end_(0) {
+ under_invalidation_checking_end_(0),
+ last_cached_subsequence_end_(0) {
ResetCurrentListIndices();
SetTracksRasterInvalidations(
RuntimeEnabledFeatures::paintUnderInvalidationCheckingEnabled());
@@ -419,6 +422,7 @@ class PLATFORM_EXPORT PaintController {
CachedSubsequenceMap;
CachedSubsequenceMap current_cached_subsequences_;
CachedSubsequenceMap new_cached_subsequences_;
+ size_t last_cached_subsequence_end_;
FRIEND_TEST_ALL_PREFIXES(PaintControllerTest, CachedSubsequenceSwapOrder);
FRIEND_TEST_ALL_PREFIXES(PaintControllerTest, CachedNestedSubsequenceUpdate);

Powered by Google App Engine
This is Rietveld 408576698