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

Unified Diff: components/scheduler/renderer/renderer_scheduler.h

Issue 1977863004: scheduler: Add main thread gesture as a detected use case (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix broken test Created 4 years, 7 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
« no previous file with comments | « no previous file | components/scheduler/renderer/renderer_scheduler.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/scheduler/renderer/renderer_scheduler.h
diff --git a/components/scheduler/renderer/renderer_scheduler.h b/components/scheduler/renderer/renderer_scheduler.h
index 51ed4b18f2c1003774f1e4398762285b52c1f02e..c6116ea79bdaa61abb4c5e48d3d6257ec6c66103 100644
--- a/components/scheduler/renderer/renderer_scheduler.h
+++ b/components/scheduler/renderer/renderer_scheduler.h
@@ -45,12 +45,29 @@ class SCHEDULER_EXPORT RendererScheduler : public ChildScheduler {
// Keep RendererScheduler::UseCaseToString in sync with this enum.
enum class UseCase {
+ // No active use case detected.
NONE,
+ // A continuous gesture (e.g., scroll, pinch) which is being driven by the
+ // compositor thread.
COMPOSITOR_GESTURE,
- MAIN_THREAD_GESTURE,
- SYNCHRONIZED_GESTURE, // Both threads in the critical path.
+ // An unspecified touch gesture which is being handled by the main thread.
+ // Note that since we don't have a full view of the use case, we should be
+ // careful to prioritize all work equally.
+ MAIN_THREAD_CUSTOM_INPUT_HANDLING,
+ // A continuous gesture (e.g., scroll, pinch) which is being driven by the
+ // compositor thread but also observed by the main thread. An example is
+ // synchronized scrolling where a scroll listener on the main thread changes
+ // page layout based on the current scroll position.
+ SYNCHRONIZED_GESTURE,
+ // A gesture has recently started and we are about to run main thread touch
+ // listeners to find out the actual gesture type. To minimize touch latency,
+ // only input handling work should run in this state.
TOUCHSTART,
+ // The page is loading.
LOADING,
+ // A continuous gesture (e.g., scroll) which is being handled by the main
+ // thread.
+ MAIN_THREAD_GESTURE,
// Must be the last entry.
USE_CASE_COUNT,
FIRST_USE_CASE = NONE,
« no previous file with comments | « no previous file | components/scheduler/renderer/renderer_scheduler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698