Commit 0b6f7fec authored by Thomas Tangl's avatar Thomas Tangl Committed by Commit Bot

[signin] Update signin-allowed policy

The signin-allowed policy is now tied to the new
pref signin.allowed_on_next_startup.
This means that changes only take effect on the next
startup.

Note: This change only affects Desktop.

Additional change:
 - Move the signin-allowed toggle to the top of the
   privacy page.

Screenshot:
https://drive.google.com/file/d/1FD0gQRmwlnIFeiAMpU7U_3x4ErUu91Tb/view?usp=sharing

TBR=scottchen@chromium.org

Bug: 888776
Change-Id: I4f7281a3b7eee8e799c48cf829dde12c7e9cbcc8
Reviewed-on: https://chromium-review.googlesource.com/1249021Reviewed-by: default avatarThomas Tangl <tangltom@chromium.org>
Reviewed-by: default avatarJulian Pastarmov <pastarmovj@chromium.org>
Reviewed-by: default avatarDavid Roger <droger@chromium.org>
Commit-Queue: Thomas Tangl <tangltom@chromium.org>
Cr-Commit-Position: refs/heads/master@{#594705}
parent 65c31a67
...@@ -266,7 +266,14 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = { ...@@ -266,7 +266,14 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = {
prefs::kManagedDefaultGeolocationSetting, prefs::kManagedDefaultGeolocationSetting,
base::Value::Type::INTEGER }, base::Value::Type::INTEGER },
{ key::kSigninAllowed, { key::kSigninAllowed,
#if defined(OS_ANDROID)
// The new kSigninAllowedOnNextStartup pref is only used on Desktop.
// Keep the old kSigninAllowed pref for Android until the policy is
// fully depricated in M71 and can be removed.
prefs::kSigninAllowed, prefs::kSigninAllowed,
#else
prefs::kSigninAllowedOnNextStartup,
#endif
base::Value::Type::BOOLEAN }, base::Value::Type::BOOLEAN },
{ key::kEnableOnlineRevocationChecks, { key::kEnableOnlineRevocationChecks,
prefs::kCertRevocationCheckingEnabled, prefs::kCertRevocationCheckingEnabled,
......
...@@ -88,10 +88,6 @@ ...@@ -88,10 +88,6 @@
$i18nRaw{improveBrowsingExperience} $i18nRaw{improveBrowsingExperience}
</p> </p>
</div> </div>
<settings-personalization-options prefs="{{prefs}}"
page-visibility="[[pageVisibility]]"
unified-consent-enabled="[[unifiedConsentEnabled_]]">
</settings-personalization-options>
</template> </template>
<if expr="not chromeos"> <if expr="not chromeos">
<settings-toggle-button id="signinAllowedToggle" <settings-toggle-button id="signinAllowedToggle"
...@@ -101,6 +97,12 @@ ...@@ -101,6 +97,12 @@
on-settings-boolean-control-change="onSigninAllowedChange_"> on-settings-boolean-control-change="onSigninAllowedChange_">
</settings-toggle-button> </settings-toggle-button>
</if><!-- not chromeos --> </if><!-- not chromeos -->
<template is="dom-if" if="[[!unifiedConsentEnabled_]]">
<settings-personalization-options prefs="{{prefs}}"
page-visibility="[[pageVisibility]]"
unified-consent-enabled="[[unifiedConsentEnabled_]]">
</settings-personalization-options>
</template>
<settings-toggle-button id="doNotTrack" <settings-toggle-button id="doNotTrack"
pref="{{prefs.enable_do_not_track}}" label="$i18n{doNotTrack}" pref="{{prefs.enable_do_not_track}}" label="$i18n{doNotTrack}"
on-settings-boolean-control-change="onDoNotTrackChange_" on-settings-boolean-control-change="onDoNotTrackChange_"
......
...@@ -123,19 +123,15 @@ AccountConsistencyModeManager::AccountConsistencyModeManager(Profile* profile) ...@@ -123,19 +123,15 @@ AccountConsistencyModeManager::AccountConsistencyModeManager(Profile* profile)
DCHECK(profile_); DCHECK(profile_);
DCHECK(!profile_->IsOffTheRecord()); DCHECK(!profile_->IsOffTheRecord());
#if BUILDFLAG(ENABLE_DICE_SUPPORT)
PrefService* prefs = profile->GetPrefs(); PrefService* prefs = profile->GetPrefs();
bool signin_allowed = prefs->GetBoolean(prefs::kSigninAllowed); // Propagate settings changes from the previous launch to the signin-allowed
if (prefs->IsUserModifiablePreference(prefs::kSigninAllowed)) { // pref.
// Propagate settings changes from the previous launch to the signin-allowed bool signin_allowed = prefs->GetBoolean(prefs::kSigninAllowedOnNextStartup);
// pref. prefs->SetBoolean(prefs::kSigninAllowed, signin_allowed);
signin_allowed = prefs->GetBoolean(prefs::kSigninAllowedOnNextStartup);
prefs->SetBoolean(prefs::kSigninAllowed, signin_allowed);
} else {
// When the signin-allowed pref is not user-modifiable(e.g. managed), reset
// signin-allowed-on-next-startup.
prefs->SetBoolean(prefs::kSigninAllowedOnNextStartup, signin_allowed);
}
UMA_HISTOGRAM_BOOLEAN("Signin.SigninAllowed", signin_allowed); UMA_HISTOGRAM_BOOLEAN("Signin.SigninAllowed", signin_allowed);
#endif
account_consistency_ = ComputeAccountConsistencyMethod(profile_); account_consistency_ = ComputeAccountConsistencyMethod(profile_);
......
...@@ -640,7 +640,7 @@ ...@@ -640,7 +640,7 @@
"os": ["win", "linux", "mac"], "os": ["win", "linux", "mac"],
"test_policy": { "SigninAllowed": true }, "test_policy": { "SigninAllowed": true },
"pref_mappings": [ "pref_mappings": [
{ "pref": "signin.allowed" } { "pref": "signin.allowed_on_next_startup" }
] ]
}, },
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment