Index: content/renderer/scheduler/renderer_scheduler_impl.cc |
diff --git a/content/renderer/scheduler/renderer_scheduler_impl.cc b/content/renderer/scheduler/renderer_scheduler_impl.cc |
index 7f006144fda6759d20b349cf7ce9c70627c0ace2..fbd8cbe605c07dfd3b1a47f62f29c45e33b85fee 100644 |
--- a/content/renderer/scheduler/renderer_scheduler_impl.cc |
+++ b/content/renderer/scheduler/renderer_scheduler_impl.cc |
@@ -45,6 +45,8 @@ RendererSchedulerImpl::RendererSchedulerImpl( |
CONTROL_TASK_QUEUE, RendererTaskQueueSelector::CONTROL_PRIORITY); |
renderer_task_queue_selector_->DisableQueue(IDLE_TASK_QUEUE); |
task_queue_manager_->SetAutoPump(IDLE_TASK_QUEUE, false); |
+ // TODO(skyostil): Increase this to 4 (crbug.com/444764). |
+ task_queue_manager_->SetWorkBatchSize(1); |
for (size_t i = 0; i < TASK_QUEUE_COUNT; i++) { |
task_queue_manager_->SetQueueName( |
@@ -255,8 +257,15 @@ void RendererSchedulerImpl::EndIdlePeriod() { |
renderer_task_queue_selector_->DisableQueue(IDLE_TASK_QUEUE); |
} |
+void RendererSchedulerImpl::SetTimeSourceForTesting( |
+ scoped_refptr<cc::TestNowSource> time_source) { |
+ main_thread_checker_.CalledOnValidThread(); |
+ time_source_ = time_source; |
+ task_queue_manager_->SetTimeSourceForTesting(time_source); |
+} |
+ |
base::TimeTicks RendererSchedulerImpl::Now() const { |
- return gfx::FrameTime::Now(); |
+ return UNLIKELY(time_source_) ? time_source_->Now() : base::TimeTicks::Now(); |
} |
RendererSchedulerImpl::PollableNeedsUpdateFlag::PollableNeedsUpdateFlag( |