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

Unified Diff: content/child/runtime_features.cc

Issue 2627023002: Introduce Origin-Trial for Service Worker Navigation Preload (Closed)
Patch Set: s/an/a Created 3 years, 11 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: content/child/runtime_features.cc
diff --git a/content/child/runtime_features.cc b/content/child/runtime_features.cc
index 9ebda8a1510057cc5a987ba87f8391b812573113..d70df49028b06d10eacf957595f3d82ebdc25648 100644
--- a/content/child/runtime_features.cc
+++ b/content/child/runtime_features.cc
@@ -314,8 +314,20 @@ void SetRuntimeFeaturesDefaultsAndUpdateFromArgs(
base::FeatureList::IsEnabled(features::kWebPayments));
#endif
- if (base::FeatureList::IsEnabled(features::kServiceWorkerNavigationPreload))
+ // We set the RuntimeEnabledFeatures for Navigation Preload feature only when
+ // it is set by "--enable-features" flag.
+ // While we are experimenting this feature using Origin Trial, we enable this
+ // feature using the field trial mechanism. So FeatureList::IsEnabled() always
+ // returns true. But, unless the command line explicitly enabled the feature,
+ // this feature should be available only when a valid origin trial token is
+ // set. This check is done by the generated code of
+ // blink::OriginTrials::serviceWorkerNavigationPreloadEnabled(). See the
+ // comments in service_worker_version.h for the details.
+ if (base::FeatureList::GetInstance()->IsFeatureOverriddenFromCommandLine(
+ features::kServiceWorkerNavigationPreload.name,
+ base::FeatureList::OVERRIDE_ENABLE_FEATURE)) {
WebRuntimeFeatures::enableServiceWorkerNavigationPreload(true);
+ }
if (base::FeatureList::IsEnabled(features::kSpeculativeLaunchServiceWorker))
WebRuntimeFeatures::enableSpeculativeLaunchServiceWorker(true);
« no previous file with comments | « content/browser/service_worker/service_worker_version.cc ('k') | third_party/WebKit/LayoutTests/VirtualTestSuites » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698