| Index: cc/scheduler/scheduler_state_machine_unittest.cc
|
| diff --git a/cc/scheduler/scheduler_state_machine_unittest.cc b/cc/scheduler/scheduler_state_machine_unittest.cc
|
| index 40689811278d88fff5fb29b7d73968bf3d27a6ce..d58f6e9a720b78c4c9c2b195781a9ab35622704a 100644
|
| --- a/cc/scheduler/scheduler_state_machine_unittest.cc
|
| +++ b/cc/scheduler/scheduler_state_machine_unittest.cc
|
| @@ -171,12 +171,6 @@ TEST(SchedulerStateMachineTest, BeginFrameNeeded) {
|
| state.SetNeedsAnimateForTest(false);
|
| EXPECT_FALSE(state.BeginFrameNeeded());
|
|
|
| - // Background tick for animations.
|
| - state.SetVisible(false);
|
| - state.SetNeedsRedraw(false);
|
| - state.SetNeedsAnimateForTest(true);
|
| - EXPECT_TRUE(state.BeginFrameNeeded());
|
| -
|
| // Proactively request BeginFrames when commit is pending.
|
| state.SetVisible(true);
|
| state.SetNeedsRedraw(false);
|
| @@ -1556,6 +1550,25 @@ TEST(SchedulerStateMachineTest,
|
| EXPECT_ACTION_UPDATE_STATE(SchedulerStateMachine::ACTION_DRAW_AND_SWAP_ABORT);
|
| }
|
|
|
| +TEST(SchedulerStateMachineTest, TestNoBeginFrameNeededWhenInvisible) {
|
| + SchedulerSettings default_scheduler_settings;
|
| + StateMachine state(default_scheduler_settings);
|
| + state.SetCanStart();
|
| + state.UpdateState(state.NextAction());
|
| + state.CreateAndInitializeOutputSurfaceWithActivatedCommit();
|
| + state.SetVisible(true);
|
| +
|
| + EXPECT_FALSE(state.BeginFrameNeeded());
|
| + state.SetNeedsRedraw(true);
|
| + EXPECT_TRUE(state.BeginFrameNeeded());
|
| +
|
| + state.SetVisible(false);
|
| + EXPECT_FALSE(state.BeginFrameNeeded());
|
| +
|
| + state.SetVisible(true);
|
| + EXPECT_TRUE(state.BeginFrameNeeded());
|
| +}
|
| +
|
| TEST(SchedulerStateMachineTest, TestNoBeginMainFrameWhenInvisible) {
|
| SchedulerSettings default_scheduler_settings;
|
| StateMachine state(default_scheduler_settings);
|
| @@ -1565,6 +1578,14 @@ TEST(SchedulerStateMachineTest, TestNoBeginMainFrameWhenInvisible) {
|
| state.SetVisible(false);
|
| state.SetNeedsCommit();
|
| EXPECT_ACTION(SchedulerStateMachine::ACTION_NONE);
|
| + EXPECT_FALSE(state.BeginFrameNeeded());
|
| +
|
| + // When become visible again, the needs commit should still be pending.
|
| + state.SetVisible(true);
|
| + EXPECT_TRUE(state.BeginFrameNeeded());
|
| + state.OnBeginImplFrame();
|
| + EXPECT_ACTION_UPDATE_STATE(
|
| + SchedulerStateMachine::ACTION_SEND_BEGIN_MAIN_FRAME);
|
| }
|
|
|
| TEST(SchedulerStateMachineTest, TestFinishCommitWhenCommitInProgress) {
|
|
|