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

Unified Diff: cc/surfaces/display_scheduler.cc

Issue 1821863002: Hook up ui::Compositor to Display's BeginFrameSource (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix unittests Created 4 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: cc/surfaces/display_scheduler.cc
diff --git a/cc/surfaces/display_scheduler.cc b/cc/surfaces/display_scheduler.cc
index 28f780862bc10c93388c09b76d6c45f93556fc51..7bbaa09ff69855166cf6efa06ab600dd05f20300 100644
--- a/cc/surfaces/display_scheduler.cc
+++ b/cc/surfaces/display_scheduler.cc
@@ -15,7 +15,8 @@ namespace cc {
DisplayScheduler::DisplayScheduler(DisplaySchedulerClient* client,
BeginFrameSource* begin_frame_source,
base::SingleThreadTaskRunner* task_runner,
- int max_pending_swaps)
+ int max_pending_swaps,
+ const RendererSettings& settings)
: client_(client),
begin_frame_source_(begin_frame_source),
task_runner_(task_runner),
@@ -34,9 +35,14 @@ DisplayScheduler::DisplayScheduler(DisplaySchedulerClient* client,
begin_frame_deadline_closure_ = base::Bind(
&DisplayScheduler::OnBeginFrameDeadline, weak_ptr_factory_.GetWeakPtr());
- // TODO(tansell): Set this to something useful.
- begin_frame_source_for_children_ = SyntheticBeginFrameSource::Create(
- task_runner, BeginFrameArgs::DefaultInterval());
+ if (settings.disable_display_vsync) {
enne (OOO) 2016/03/28 21:43:27 I like the way this worked out, in terms of the Di
sunnyps 2016/03/28 23:09:48 It feels like Display or BrowserCompositorOutputSu
enne (OOO) 2016/03/29 20:39:52 I'll make Display do it, because Display already h
+ unthrottled_begin_frame_source_ =
+ BackToBackBeginFrameSource::Create(task_runner);
+ begin_frame_source_ = unthrottled_begin_frame_source_.get();
+ }
+
+ // TODO(enne): For now, this is always the same, so just set initially.
+ client_->UpdateSchedulerBeginFrameSource(begin_frame_source_);
}
DisplayScheduler::~DisplayScheduler() {

Powered by Google App Engine
This is Rietveld 408576698