| Index: cc/scheduler_state_machine.cc
|
| diff --git a/cc/scheduler_state_machine.cc b/cc/scheduler_state_machine.cc
|
| index f9d8cbc8f5b90b834ab8a1102f5de8b3b9384221..d385a432a44614098fc436d82f8c366a4d42cb59 100644
|
| --- a/cc/scheduler_state_machine.cc
|
| +++ b/cc/scheduler_state_machine.cc
|
| @@ -6,11 +6,13 @@
|
|
|
| #include "base/logging.h"
|
| #include "base/stringprintf.h"
|
| +#include "cc/scheduler.h"
|
|
|
| namespace cc {
|
|
|
| -SchedulerStateMachine::SchedulerStateMachine()
|
| - : m_commitState(COMMIT_STATE_IDLE)
|
| +SchedulerStateMachine::SchedulerStateMachine(const SchedulerSettings* const settings)
|
| + : m_settings(settings)
|
| + , m_commitState(COMMIT_STATE_IDLE)
|
| , m_currentFrameNumber(0)
|
| , m_lastFrameNumberWhereDrawWasCalled(-1)
|
| , m_lastFrameNumberWhereTreeActivationAttempted(-1)
|
| @@ -209,7 +211,9 @@ void SchedulerStateMachine::updateState(Action action)
|
| m_commitState = COMMIT_STATE_WAITING_FOR_FIRST_FORCED_DRAW;
|
| else
|
| m_commitState = COMMIT_STATE_WAITING_FOR_FIRST_DRAW;
|
| - m_needsRedraw = true;
|
| + // When impl-side painting, we draw on activation instead of on commit.
|
| + if (!m_settings->implSidePainting)
|
| + m_needsRedraw = true;
|
| if (m_drawIfPossibleFailed)
|
| m_lastFrameNumberWhereDrawWasCalled = -1;
|
|
|
|
|