| Index: chrome/browser/banners/app_banner_settings_helper.cc
|
| diff --git a/chrome/browser/banners/app_banner_settings_helper.cc b/chrome/browser/banners/app_banner_settings_helper.cc
|
| index fb7f13af96812c53b4036aea1e9610251b2fe13c..c93f08a677337157c77947643bd5b28f5076ca4d 100644
|
| --- a/chrome/browser/banners/app_banner_settings_helper.cc
|
| +++ b/chrome/browser/banners/app_banner_settings_helper.cc
|
| @@ -81,6 +81,7 @@ const char kBannerParamsEngagementTotalKey[] = "site_engagement_total";
|
| const char kBannerParamsDaysAfterBannerDismissedKey[] = "days_after_dismiss";
|
| const char kBannerParamsDaysAfterBannerIgnoredKey[] = "days_after_ignore";
|
| const char kBannerSiteEngagementParamsKey[] = "use_site_engagement";
|
| +const char kBannerParamsLanguageKey[] = "language_option";
|
|
|
| // Engagement weight assigned to direct and indirect navigations.
|
| // By default, a direct navigation is a page visit via ui::PAGE_TRANSITION_TYPED
|
| @@ -674,6 +675,21 @@ void AppBannerSettingsHelper::UpdateFromFieldTrial() {
|
| }
|
| }
|
|
|
| +AppBannerSettingsHelper::LanguageOption
|
| +AppBannerSettingsHelper::GetHomescreenLanguageOption() {
|
| + std::string param = variations::GetVariationParamValue(
|
| + kBannerParamsKey, kBannerParamsLanguageKey);
|
| + unsigned int language_option = 0;
|
| +
|
| + if (param.empty() || !base::StringToUint(param, &language_option) ||
|
| + language_option < LANGUAGE_OPTION_MIN ||
|
| + language_option > LANGUAGE_OPTION_MAX) {
|
| + return LANGUAGE_OPTION_DEFAULT;
|
| + }
|
| +
|
| + return static_cast<LanguageOption>(language_option);
|
| +}
|
| +
|
| bool AppBannerSettingsHelper::ShouldUseSiteEngagementScore() {
|
| if (base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| switches::kEnableSiteEngagementAppBanner)) {
|
|
|