Chromium Code Reviews| Index: components/scheduler/renderer/web_frame_scheduler_impl.h |
| diff --git a/components/scheduler/renderer/web_frame_scheduler_impl.h b/components/scheduler/renderer/web_frame_scheduler_impl.h |
| index 25a18518660c6425e9f01077f547380fe8832e5b..c833a6ae1aca1fae48ec49704836f70fa49021d5 100644 |
| --- a/components/scheduler/renderer/web_frame_scheduler_impl.h |
| +++ b/components/scheduler/renderer/web_frame_scheduler_impl.h |
| @@ -33,15 +33,18 @@ class SCHEDULER_EXPORT WebFrameSchedulerImpl : public blink::WebFrameScheduler { |
| public: |
| WebFrameSchedulerImpl(RendererSchedulerImpl* renderer_scheduler, |
| WebViewSchedulerImpl* parent_web_view_scheduler, |
| - base::trace_event::BlameContext* blame_context); |
| + base::trace_event::BlameContext* blame_context, |
| + bool allow_hidden_timer_throttling); |
| ~WebFrameSchedulerImpl() override; |
| // blink::WebFrameScheduler implementation: |
| void setFrameVisible(bool frame_visible) override; |
| void setPageVisible(bool page_visible) override; |
| + void setCrossOrigin(bool cross_origin) override; |
| blink::WebTaskRunner* loadingTaskRunner() override; |
| blink::WebTaskRunner* timerTaskRunner() override; |
| + blink::WebTaskRunner* defaultTaskRunner() override; |
| void OnVirtualTimeDomainChanged(); |
| @@ -49,18 +52,23 @@ class SCHEDULER_EXPORT WebFrameSchedulerImpl : public blink::WebFrameScheduler { |
| friend class WebViewSchedulerImpl; |
| void DetachFromWebViewScheduler(); |
| - void ApplyPolicyToTimerQueue(); |
| + bool ShouldThrottleTimers() const; |
| + void UpdateTimerThrottling(bool was_throttled); |
| scoped_refptr<TaskQueue> loading_task_queue_; |
| scoped_refptr<TaskQueue> timer_task_queue_; |
| + scoped_refptr<TaskQueue> default_task_queue_; |
| std::unique_ptr<WebTaskRunnerImpl> loading_web_task_runner_; |
| std::unique_ptr<WebTaskRunnerImpl> timer_web_task_runner_; |
| + std::unique_ptr<WebTaskRunnerImpl> default_web_task_runner_; |
| RendererSchedulerImpl* renderer_scheduler_; // NOT OWNED |
| WebViewSchedulerImpl* parent_web_view_scheduler_; // NOT OWNED |
| base::trace_event::BlameContext* blame_context_; // NOT OWNED |
| TaskQueue::PumpPolicy virtual_time_pump_policy_; |
| bool frame_visible_; |
| bool page_visible_; |
| + bool cross_origin_; |
| + const bool allow_hidden_timer_throttling_; |
|
esprehn
2016/06/29 05:06:48
I'm sad we keep plumbing more and more stuff out o
|
| DISALLOW_COPY_AND_ASSIGN(WebFrameSchedulerImpl); |
| }; |