Chromium Code Reviews| 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 9746d9425740d96ff63e52707b498f08b4878d80..6088656e8f5b81cd67c3df189f0eaf822c0c515c 100644 |
| --- a/cc/input/main_thread_scrolling_reason.h |
| +++ b/cc/input/main_thread_scrolling_reason.h |
| @@ -67,10 +67,7 @@ struct MainThreadScrollingReason { |
| kNotScrollingOnMain | kHasBackgroundAttachmentFixedObjects | |
| kHasNonLayerViewportConstrainedObjects | kThreadedScrollingDisabled | |
| kScrollbarScrolling | kPageOverlay | kHandlingScrollFromMainThread | |
| - kCustomScrollbarScrolling | kHasOpacityAndLCDText | |
| - kHasTransformAndLCDText | kBackgroundNotOpaqueInRectAndLCDText | |
| - kHasBorderRadius | kHasClipRelatedProperty | |
| - kHasBoxShadowFromNonRootLayer; |
| + kCustomScrollbarScrolling; |
| return (reasons & reasons_set_by_main_thread) == reasons; |
| } |
| @@ -84,6 +81,16 @@ struct MainThreadScrollingReason { |
| return (reasons & reasons_set_by_compositor) == reasons; |
| } |
| + // Returns true if the given MainThreadScrollingReason is non zero and |
| + // contains any of the following non composited scroll reasons. |
|
bokan
2017/03/28 15:30:15
The comment doesn't add anything - it says the exa
|
| + static bool NonCompositedScrollReasons(uint32_t reasons) { |
| + uint32_t reasons_set_by_main_thread_only = |
|
bokan
2017/03/28 15:30:15
reasons_set_by_main_thread_only -> non_composited_
|
| + kHasOpacityAndLCDText | kHasTransformAndLCDText | |
| + kBackgroundNotOpaqueInRectAndLCDText | kHasBorderRadius | |
| + kHasClipRelatedProperty | kHasBoxShadowFromNonRootLayer; |
| + return reasons && (reasons & reasons_set_by_main_thread_only); |
| + } |
| + |
| static std::string mainThreadScrollingReasonsAsText(uint32_t reasons) { |
| base::trace_event::TracedValue tracedValue; |
| mainThreadScrollingReasonsAsTracedValue(reasons, &tracedValue); |
| @@ -148,20 +155,6 @@ struct MainThreadScrollingReason { |
| tracedValue->AppendString("Page-based scrolling"); |
| tracedValue->EndArray(); |
| } |
| - |
| - // For a given reason, return its index in enum |
| - static int getReasonIndex(uint32_t reason) { |
| - // Multiple reasons provided |
| - if (reason & (reason - 1)) |
| - return -1; |
| - |
| - int index = -1; |
| - while (reason > 0) { |
| - reason = reason >> 1; |
| - ++index; |
| - } |
| - return index; |
| - } |
| }; |
| } // namespace cc |