Chromium Code Reviews| Index: cc/scheduler/scheduler.cc |
| diff --git a/cc/scheduler/scheduler.cc b/cc/scheduler/scheduler.cc |
| index 40294b8a3a6a9d6ce77b5a8c25e7a1bf0897c68e..b9d62225947b61de65c306af8aa892e10a9da7e0 100644 |
| --- a/cc/scheduler/scheduler.cc |
| +++ b/cc/scheduler/scheduler.cc |
| @@ -208,6 +208,11 @@ base::TimeTicks Scheduler::LastBeginImplFrameTime() { |
| return begin_impl_frame_tracker_.Current().frame_time; |
| } |
| +void Scheduler::BeginMainFrameNotExpectedUntil(base::TimeTicks time) { |
| + TRACE_EVENT0("cc", "Scheduler::BeginMainFrameNotExpectedUntil"); |
|
sunnyps
2017/04/20 18:36:47
nit: might want to log time in the trace event
Dan Elphick
2017/04/26 16:31:44
Done.
|
| + client_->ScheduledActionBeginMainFrameNotExpectedUntil(time); |
| +} |
| + |
| void Scheduler::BeginImplFrameNotExpectedSoon() { |
| compositor_timing_history_->BeginImplFrameNotExpectedSoon(); |
| @@ -629,6 +634,11 @@ void Scheduler::ProcessScheduledActions() { |
| // TODO(brianderson): Pass begin_main_frame_args_ directly to client. |
| client_->ScheduledActionSendBeginMainFrame(begin_main_frame_args_); |
| break; |
| + case SchedulerStateMachine::ACTION_NOTIFY_BEGIN_MAIN_FRAME_NOT_SENT: |
| + state_machine_.WillNotifyBeginMainFrameNotSent(); |
| + BeginMainFrameNotExpectedUntil(begin_main_frame_args_.frame_time + |
| + begin_main_frame_args_.interval); |
| + break; |
| case SchedulerStateMachine::ACTION_COMMIT: { |
| bool commit_has_no_updates = false; |
| state_machine_.WillCommit(commit_has_no_updates); |