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

Unified Diff: cc/scheduler/scheduler.cc

Issue 328603002: Moving deadline adjustment from SyntheticBeginFrameSource into BeginFrameArgs. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/scheduler/scheduler.cc
diff --git a/cc/scheduler/scheduler.cc b/cc/scheduler/scheduler.cc
index cc6ae1a39dc79c0e6a8f9dcb6b0fcc0b901ce589..126bebf93b08dbf15a6fdacfe13e8e2f17f4b0f5 100644
--- a/cc/scheduler/scheduler.cc
+++ b/cc/scheduler/scheduler.cc
@@ -64,8 +64,7 @@ void Scheduler::SyntheticBeginFrameSource::OnTimerTick() {
BeginFrameArgs
Scheduler::SyntheticBeginFrameSource::CreateSyntheticBeginFrameArgs(
base::TimeTicks frame_time) {
- base::TimeTicks deadline =
- time_source_->NextTickTime() - scheduler_->EstimatedParentDrawTime();
+ base::TimeTicks deadline = time_source_->NextTickTime();
return BeginFrameArgs::Create(
frame_time, deadline, scheduler_->VSyncInterval());
}
@@ -398,6 +397,9 @@ void Scheduler::BeginFrame(const BeginFrameArgs& args) {
TRACE_EVENT1("cc", "Scheduler::BeginFrame", "args", ToTrace(args));
DCHECK(settings_.throttle_frame_production);
+ BeginFrameArgs adjusted_args(args);
+ adjusted_args.deadline -= EstimatedParentDrawTime();
brianderson 2014/06/10 18:24:23 I had some reservations about putting the adjustme
+
bool should_defer_begin_frame;
if (settings_.using_synchronous_renderer_compositor) {
should_defer_begin_frame = false;
@@ -410,13 +412,13 @@ void Scheduler::BeginFrame(const BeginFrameArgs& args) {
}
if (should_defer_begin_frame) {
- begin_retro_frame_args_.push_back(args);
+ begin_retro_frame_args_.push_back(adjusted_args);
TRACE_EVENT_INSTANT0(
"cc", "Scheduler::BeginFrame deferred", TRACE_EVENT_SCOPE_THREAD);
return;
}
- BeginImplFrame(args);
+ BeginImplFrame(adjusted_args);
}
// BeginRetroFrame is called for BeginFrames that we've deferred because
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698