| Index: cc/scheduler/scheduler_state_machine.cc
|
| diff --git a/cc/scheduler/scheduler_state_machine.cc b/cc/scheduler/scheduler_state_machine.cc
|
| index d54907f4059f844307e7370126faf5c7784ac2e2..c3a4a1e272a5a6006ac49548dea5b206cdb40a0b 100644
|
| --- a/cc/scheduler/scheduler_state_machine.cc
|
| +++ b/cc/scheduler/scheduler_state_machine.cc
|
| @@ -875,6 +875,12 @@ bool SchedulerStateMachine::ShouldTriggerBeginImplFrameDeadlineImmediately()
|
| if (pending_swaps_ >= max_pending_swaps_)
|
| return false;
|
|
|
| + if (active_tree_needs_first_draw_)
|
| + return true;
|
| +
|
| + if (!needs_redraw_)
|
| + return false;
|
| +
|
| // This is used to prioritize impl-thread draws when the main thread isn't
|
| // producing anything, e.g., after an aborted commit. We also check that we
|
| // don't have a pending tree -- otherwise we should give it a chance to
|
| @@ -883,12 +889,6 @@ bool SchedulerStateMachine::ShouldTriggerBeginImplFrameDeadlineImmediately()
|
| if (commit_state_ == COMMIT_STATE_IDLE && !has_pending_tree_)
|
| return true;
|
|
|
| - if (!needs_redraw_)
|
| - return false;
|
| -
|
| - if (active_tree_needs_first_draw_)
|
| - return true;
|
| -
|
| // Prioritize impl-thread draws in impl_latency_takes_priority_ mode.
|
| if (impl_latency_takes_priority_)
|
| return true;
|
|
|