Navi: Add finch options for app and shortcut variation. Bug: 967785 Change-Id: I12c99470ed982adee57dc5f73b109fda618ba379 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1636275 Reviewed-by: Jesse Doherty <jwd@chromium.org> Commit-Queue: Hector Carmona <hcarmona@chromium.org> Cr-Commit-Position: refs/heads/master@{#664907}
diff --git a/chrome/browser/ui/webui/welcome/nux_helper.cc b/chrome/browser/ui/webui/welcome/nux_helper.cc index b900cc5..e984fb0 100644 --- a/chrome/browser/ui/webui/welcome/nux_helper.cc +++ b/chrome/browser/ui/webui/welcome/nux_helper.cc
@@ -98,6 +98,20 @@ return CanShowSigninModule(policies); } +#if defined(GOOGLE_CHROME_BUILD) && defined(OS_WIN) +// These feature flags are used to tie our experiment to specific studies. +// go/navi-app-variation for details. +// TODO(hcarmona): find a solution that scales better. +const base::Feature kNaviControlEnabled = {"NaviControlEnabled", + base::FEATURE_DISABLED_BY_DEFAULT}; +const base::Feature kNaviAppVariationEnabled = { + "NaviAppVariationEnabled", base::FEATURE_DISABLED_BY_DEFAULT}; +const base::Feature kNaviNTPVariationEnabled = { + "NaviNTPVariationEnabled", base::FEATURE_DISABLED_BY_DEFAULT}; +const base::Feature kNaviShortcutVariationEnabled = { + "NaviShortcutVariationEnabled", base::FEATURE_DISABLED_BY_DEFAULT}; +#endif // defined(GOOGLE_CHROME_BUILD) && defined(OS_WIN) + // This feature flag is used to force the feature to be turned on for non-win // and non-branded builds, like with tests or development on other platforms. const base::Feature kNuxOnboardingForceEnabled = { @@ -175,6 +189,17 @@ ChromeMetricsServiceAccessor::RegisterSyntheticFieldTrial( "NaviOnboardingSynthetic", onboard_group); + // Check for feature based on onboarding group. + // TODO(hcarmona): find a solution that scales better. + if (onboard_group.compare("ControlSynthetic-008") == 0) + base::FeatureList::IsEnabled(kNaviControlEnabled); + else if (onboard_group.compare("AppVariationSynthetic-008") == 0) + base::FeatureList::IsEnabled(kNaviAppVariationEnabled); + else if (onboard_group.compare("NTPVariationSynthetic-008") == 0) + base::FeatureList::IsEnabled(kNaviNTPVariationEnabled); + else if (onboard_group.compare("ShortcutVariationSynthetic-008") == 0) + base::FeatureList::IsEnabled(kNaviShortcutVariationEnabled); + if (base::FeatureList::IsEnabled(nux::kNuxOnboardingFeature)) { return true; }