Chromium Code Reviews| Index: cc/scheduler/scheduler_state_machine.h |
| diff --git a/cc/scheduler/scheduler_state_machine.h b/cc/scheduler/scheduler_state_machine.h |
| index cd4a7f2ee6689c969354e511fad775a8980d3355..20fe3f1441e629dafab349fac14986778f0bc896 100644 |
| --- a/cc/scheduler/scheduler_state_machine.h |
| +++ b/cc/scheduler/scheduler_state_machine.h |
| @@ -123,6 +123,7 @@ class CC_EXPORT SchedulerStateMachine { |
| ACTION_BEGIN_COMPOSITOR_FRAME_SINK_CREATION, |
| ACTION_PREPARE_TILES, |
| ACTION_INVALIDATE_COMPOSITOR_FRAME_SINK, |
| + ACTION_DO_SHORT_IDLE_WORK, |
|
Sami
2017/03/30 15:30:36
ACTION_NOTIFY_BEGIN_MAIN_FRAME_NOT_SENT
Dan Elphick
2017/04/06 16:10:17
Done.
|
| }; |
| static const char* ActionToString(Action action); |
| @@ -131,6 +132,7 @@ class CC_EXPORT SchedulerStateMachine { |
| Action NextAction() const; |
| void WillSendBeginMainFrame(); |
| + void WillDoShortIdleWork(); |
| void WillCommit(bool commit_had_no_updates); |
| void WillActivate(); |
| void WillDraw(); |
| @@ -318,6 +320,7 @@ class CC_EXPORT SchedulerStateMachine { |
| bool ShouldCommit() const; |
| bool ShouldPrepareTiles() const; |
| bool ShouldInvalidateCompositorFrameSink() const; |
| + bool ShouldDoShortIdleWork() const; |
| void WillDrawInternal(); |
| void WillPerformImplSideInvalidationInternal(); |
| @@ -356,9 +359,10 @@ class CC_EXPORT SchedulerStateMachine { |
| // These are used to ensure that an action only happens once per frame, |
| // deadline, etc. |
| bool draw_funnel_; |
| - bool send_begin_main_frame_funnel_; |
| + bool did_send_begin_main_frame_for_current_frame_; |
| bool invalidate_compositor_frame_sink_funnel_; |
| bool impl_side_invalidation_funnel_; |
| + bool did_do_idle_work_; |
|
Sami
2017/03/30 15:30:37
Let's also add a flag saying whether we did a comm
Dan Elphick
2017/04/06 16:10:16
Done.
|
| // prepare_tiles_funnel_ is "filled" each time PrepareTiles is called |
| // and "drained" on each BeginImplFrame. If the funnel gets too full, |
| // we start throttling ACTION_PREPARE_TILES such that we average one |