summaryrefslogtreecommitdiffstats
path: root/cc/scheduler.cc
diff options
context:
space:
mode:
authorbrianderson@chromium.org <brianderson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-12 22:07:48 +0000
committerbrianderson@chromium.org <brianderson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-12 22:07:48 +0000
commiteabe5003b8c42a48e7072de0282c357cb347256d (patch)
tree288ca2da8467899b1e92a7f92dae3901285a6c04 /cc/scheduler.cc
parent45ad7197ae1b016fe27f795a75e62fb55de08696 (diff)
downloadchromium_src-eabe5003b8c42a48e7072de0282c357cb347256d.zip
chromium_src-eabe5003b8c42a48e7072de0282c357cb347256d.tar.gz
chromium_src-eabe5003b8c42a48e7072de0282c357cb347256d.tar.bz2
Decouple texture upload checks, tree activation, and drawing.
This prevents us from drawing more often than we need to when impl-side-painting is enabled. It removes the concept of scheduling checkForCompletedSetPixels, instead checking for completed uploads 1) before determining whether or not to make the pending tree active and 2) before drawing. Tree activation is handled in two places now: 1) before calculating animations and 2) before a vsync tick. When a pending tree is activated, a request to draw is made. BUG=168724 Review URL: https://chromiumcodereview.appspot.com/11823043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176596 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/scheduler.cc')
-rw-r--r--cc/scheduler.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/cc/scheduler.cc b/cc/scheduler.cc
index 630d25b..6442414 100644
--- a/cc/scheduler.cc
+++ b/cc/scheduler.cc
@@ -168,6 +168,9 @@ void Scheduler::processScheduledActions()
case SchedulerStateMachine::ACTION_COMMIT:
m_client->scheduledActionCommit();
break;
+ case SchedulerStateMachine::ACTION_ACTIVATE_PENDING_TREE_IF_NEEDED:
+ m_client->scheduledActionActivatePendingTreeIfNeeded();
+ break;
case SchedulerStateMachine::ACTION_DRAW_IF_POSSIBLE: {
ScheduledActionDrawAndSwapResult result = m_client->scheduledActionDrawAndSwapIfPossible();
m_stateMachine.didDrawIfPossibleCompleted(result.didDraw);