| Index: components/scheduler/renderer/renderer_web_scheduler_impl.cc
|
| diff --git a/components/scheduler/renderer/renderer_web_scheduler_impl.cc b/components/scheduler/renderer/renderer_web_scheduler_impl.cc
|
| index e53e01d3ca2320ffebd95348108bc52954f535d5..3e3b2a15013d4d7e830f747932d4b37af39899c0 100644
|
| --- a/components/scheduler/renderer/renderer_web_scheduler_impl.cc
|
| +++ b/components/scheduler/renderer/renderer_web_scheduler_impl.cc
|
| @@ -7,6 +7,7 @@
|
| #include <memory>
|
|
|
| #include "base/command_line.h"
|
| +#include "base/feature_list.h"
|
| #include "base/memory/ptr_util.h"
|
| #include "components/scheduler/base/task_queue.h"
|
| #include "components/scheduler/common/scheduler_switches.h"
|
| @@ -14,6 +15,10 @@
|
| #include "components/scheduler/renderer/web_view_scheduler_impl.h"
|
|
|
| namespace scheduler {
|
| +namespace {
|
| +const base::Feature kHiddenTimerThrottlingFeature{
|
| + "SchedulerHiddenTimerThrottling", base::FEATURE_ENABLED_BY_DEFAULT};
|
| +};
|
|
|
| RendererWebSchedulerImpl::RendererWebSchedulerImpl(
|
| RendererSchedulerImpl* renderer_scheduler)
|
| @@ -36,10 +41,16 @@ void RendererWebSchedulerImpl::resumeTimerQueue() {
|
|
|
| std::unique_ptr<blink::WebViewScheduler>
|
| RendererWebSchedulerImpl::createWebViewScheduler(blink::WebView* web_view) {
|
| + bool allow_hidden_timer_throttling = true;
|
| + if (base::FeatureList::GetInstance()) {
|
| + allow_hidden_timer_throttling =
|
| + base::FeatureList::IsEnabled(kHiddenTimerThrottlingFeature);
|
| + }
|
| base::CommandLine* command_line = base::CommandLine::ForCurrentProcess();
|
| return base::WrapUnique(new WebViewSchedulerImpl(
|
| web_view, renderer_scheduler_,
|
| - command_line->HasSwitch(switches::kDisableBackgroundTimerThrottling)));
|
| + command_line->HasSwitch(switches::kDisableBackgroundTimerThrottling),
|
| + allow_hidden_timer_throttling));
|
| }
|
|
|
| void RendererWebSchedulerImpl::onNavigationStarted() {
|
|
|