Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(235)

Side by Side Diff: cc/scheduler.cc

Issue 11830040: cc: Do not request redraw on commit when impl-side painting (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@decouple_draw3
Patch Set: Keep needsRedraw decision in the commit state Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/scheduler.h" 5 #include "cc/scheduler.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/debug/trace_event.h" 8 #include "base/debug/trace_event.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 10
11 namespace cc { 11 namespace cc {
12 12
13 Scheduler::Scheduler(SchedulerClient* client, scoped_ptr<FrameRateController> fr ameRateController) 13 Scheduler::Scheduler(SchedulerClient* client, scoped_ptr<FrameRateController> fr ameRateController, bool implSidePaintingEnabled)
14 : m_client(client) 14 : m_client(client)
15 , m_frameRateController(frameRateController.Pass()) 15 , m_frameRateController(frameRateController.Pass())
16 , m_stateMachine(implSidePaintingEnabled)
16 , m_insideProcessScheduledActions(false) 17 , m_insideProcessScheduledActions(false)
17 { 18 {
18 DCHECK(m_client); 19 DCHECK(m_client);
19 m_frameRateController->setClient(this); 20 m_frameRateController->setClient(this);
20 DCHECK(!m_stateMachine.vsyncCallbackNeeded()); 21 DCHECK(!m_stateMachine.vsyncCallbackNeeded());
21 } 22 }
22 23
23 Scheduler::~Scheduler() 24 Scheduler::~Scheduler()
24 { 25 {
25 m_frameRateController->setActive(false); 26 m_frameRateController->setActive(false);
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 } 193 }
193 action = m_stateMachine.nextAction(); 194 action = m_stateMachine.nextAction();
194 } 195 }
195 196
196 // Activate or deactivate the frame rate controller. 197 // Activate or deactivate the frame rate controller.
197 m_frameRateController->setActive(m_stateMachine.vsyncCallbackNeeded()); 198 m_frameRateController->setActive(m_stateMachine.vsyncCallbackNeeded());
198 m_client->didAnticipatedDrawTimeChange(m_frameRateController->nextTickTime() ); 199 m_client->didAnticipatedDrawTimeChange(m_frameRateController->nextTickTime() );
199 } 200 }
200 201
201 } // namespace cc 202 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698