Index: chrome/browser/chromeos/settings/device_settings_provider.cc |
diff --git a/chrome/browser/chromeos/settings/device_settings_provider.cc b/chrome/browser/chromeos/settings/device_settings_provider.cc |
index 6a7876cefae0df7081b569d369d2baf8c6d5b3e4..98293ad351e496ed116b6cd0aef3b25dc5e0aaec 100644 |
--- a/chrome/browser/chromeos/settings/device_settings_provider.cc |
+++ b/chrome/browser/chromeos/settings/device_settings_provider.cc |
@@ -47,6 +47,7 @@ const char* kKnownSettings[] = { |
kAccountsPrefDeviceLocalAccountAutoLoginId, |
kAccountsPrefEphemeralUsersEnabled, |
kAccountsPrefShowUserNamesOnSignIn, |
+ kAccountsPrefSupervisedUsersEnabled, |
kAccountsPrefUsers, |
kAllowRedeemChromeOsRegistrationOffers, |
kAllowedConnectionTypesForUpdate, |
@@ -366,16 +367,17 @@ void DeviceSettingsProvider::SetInPolicy() { |
} else { |
// The remaining settings don't support Set(), since they are not |
// intended to be customizable by the user: |
+ // kAccountsPrefSupervisedUsersEnabled |
// kAppPack |
// kDeviceAttestationEnabled |
// kDeviceOwner |
// kIdleLogoutTimeout |
// kIdleLogoutWarningDuration |
// kReleaseChannelDelegated |
- // kReportDeviceVersionInfo |
// kReportDeviceActivityTimes |
// kReportDeviceBootMode |
// kReportDeviceLocation |
+ // kReportDeviceVersionInfo |
// kScreenSaverExtensionId |
// kScreenSaverTimeout |
// kStartUpUrls |
@@ -448,6 +450,11 @@ void DeviceSettingsProvider::DecodeLoginPolicies( |
policy.ephemeral_users_enabled().has_ephemeral_users_enabled() && |
policy.ephemeral_users_enabled().ephemeral_users_enabled()); |
+ new_values_cache->SetBoolean( |
+ kAccountsPrefSupervisedUsersEnabled, |
+ policy.has_supervised_users_settings() && |
+ policy.supervised_users_settings().supervised_users_enabled()); |
+ |
base::ListValue* list = new base::ListValue(); |
const em::UserWhitelistProto& whitelist_proto = policy.user_whitelist(); |
const RepeatedPtrField<std::string>& whitelist = |