| Index: chrome/browser/chromeos/login/startup_utils.cc
|
| diff --git a/chrome/browser/chromeos/login/startup_utils.cc b/chrome/browser/chromeos/login/startup_utils.cc
|
| index f47506994adce8e231b396d3def5d6497d88f925..4488a65f7089ee98dcd691dac8312accee9b480c 100644
|
| --- a/chrome/browser/chromeos/login/startup_utils.cc
|
| +++ b/chrome/browser/chromeos/login/startup_utils.cc
|
| @@ -57,6 +57,7 @@ void StartupUtils::RegisterPrefs(PrefRegistrySimple* registry) {
|
| registry->RegisterBooleanPref(prefs::kEnrollmentRecoveryRequired, false);
|
| registry->RegisterStringPref(prefs::kInitialLocale, "en-US");
|
| registry->RegisterBooleanPref(prefs::kNewOobe, false);
|
| + registry->RegisterBooleanPref(prefs::kWebviewSigninEnabled, false);
|
| }
|
|
|
| // static
|
| @@ -175,6 +176,28 @@ std::string StartupUtils::GetInitialLocale() {
|
| }
|
|
|
| // static
|
| +bool StartupUtils::IsWebviewSigninAllowed() {
|
| + return extensions::GetCurrentChannel() <= chrome::VersionInfo::CHANNEL_DEV;
|
| +}
|
| +
|
| +// static
|
| +bool StartupUtils::IsWebviewSigninEnabled() {
|
| + return IsWebviewSigninAllowed() &&
|
| + g_browser_process->local_state()->GetBoolean(
|
| + prefs::kWebviewSigninEnabled);
|
| +}
|
| +
|
| +// static
|
| +bool StartupUtils::EnableWebviewSignin(bool is_enabled) {
|
| + if (!IsWebviewSigninAllowed())
|
| + return false;
|
| +
|
| + g_browser_process->local_state()->SetBoolean(prefs::kWebviewSigninEnabled,
|
| + is_enabled);
|
| + return true;
|
| +}
|
| +
|
| +// static
|
| void StartupUtils::SetInitialLocale(const std::string& locale) {
|
| if (l10n_util::IsValidLocaleSyntax(locale))
|
| SaveStringPreferenceForced(prefs::kInitialLocale, locale);
|
|
|