Index: cc/input/main_thread_scrolling_reason.h |
diff --git a/cc/input/main_thread_scrolling_reason.h b/cc/input/main_thread_scrolling_reason.h |
index 191318b60a336982efaff0e489ffcd56245033ce..85a8ea117b7f1df92bf94ec792e3993599026bc6 100644 |
--- a/cc/input/main_thread_scrolling_reason.h |
+++ b/cc/input/main_thread_scrolling_reason.h |
@@ -32,6 +32,8 @@ struct MainThreadScrollingReason { |
kHandlingScrollFromMainThread = 1 << 13, |
kCustomScrollbarScrolling = 1 << 15, |
kHasOpacity = 1 << 16, |
+ kHasTransform = 1 << 17, |
+ kBackgroundNotOpaqueInRect = 1 << 18, |
// Transient scrolling reasons. These are computed for each scroll begin. |
kNonFastScrollableRegion = 1 << 5, |
@@ -43,7 +45,7 @@ struct MainThreadScrollingReason { |
kPageBasedScrolling = 1 << 12, |
// The number of flags in this struct (excluding itself). |
- kMainThreadScrollingReasonCount = 18, |
+ kMainThreadScrollingReasonCount = 20, |
ajuma
2017/01/03 22:31:05
Should this be 19? (since the flag with the larges
yigu
2017/01/03 22:44:15
It should be 19 + 1. I read about the reason somew
yigu
2017/01/03 23:09:14
See https://codereview.chromium.org/2360113003 for
ajuma
2017/01/04 00:28:10
Thanks for looking into this.
|
}; |
// Returns true if the given MainThreadScrollingReason can be set by the main |
@@ -53,7 +55,8 @@ struct MainThreadScrollingReason { |
kNotScrollingOnMain | kHasBackgroundAttachmentFixedObjects | |
kHasNonLayerViewportConstrainedObjects | kThreadedScrollingDisabled | |
kScrollbarScrolling | kPageOverlay | kHandlingScrollFromMainThread | |
- kCustomScrollbarScrolling | kHasOpacity; |
+ kCustomScrollbarScrolling | kHasOpacity | kHasTransform | |
+ kBackgroundNotOpaqueInRect; |
return (reasons & reasons_set_by_main_thread) == reasons; |
} |
@@ -100,6 +103,10 @@ struct MainThreadScrollingReason { |
tracedValue->AppendString("Custom scrollbar scrolling"); |
if (reasons & MainThreadScrollingReason::kHasOpacity) |
tracedValue->AppendString("Has opacity"); |
+ if (reasons & MainThreadScrollingReason::kHasTransform) |
+ tracedValue->AppendString("Has transform"); |
+ if (reasons & MainThreadScrollingReason::kBackgroundNotOpaqueInRect) |
+ tracedValue->AppendString("Background is not opaque in rect"); |
// Transient scrolling reasons. |
if (reasons & MainThreadScrollingReason::kNonFastScrollableRegion) |