Index: chrome/browser/ui/ash/system_tray_delegate_chromeos.cc |
diff --git a/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc b/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc |
index f3ef877875ad19d3f3d2abdddeac815bf226d497..7766d8edf55c0ecdef53555f9115bfad5668423e 100644 |
--- a/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc |
+++ b/chrome/browser/ui/ash/system_tray_delegate_chromeos.cc |
@@ -58,6 +58,8 @@ |
#include "chrome/browser/chromeos/login/users/chrome_user_manager.h" |
#include "chrome/browser/chromeos/login/users/supervised_user_manager.h" |
#include "chrome/browser/chromeos/options/network_config_view.h" |
+#include "chrome/browser/chromeos/ownership/owner_settings_service_chromeos.h" |
+#include "chrome/browser/chromeos/ownership/owner_settings_service_chromeos_factory.h" |
#include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" |
#include "chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.h" |
#include "chrome/browser/chromeos/profiles/multiprofiles_intro_dialog.h" |
@@ -1018,8 +1020,19 @@ void SystemTrayDelegateChromeOS::UpdateClockType() { |
GetSystemTrayNotifier()->NotifyDateFormatChanged(); |
// This also works for enterprise-managed devices because they never have |
// local owner. |
- if (user_manager::UserManager::Get()->IsCurrentUserOwner()) |
- CrosSettings::Get()->SetBoolean(kSystemUse24HourClock, use_24_hour_clock); |
+ if (user_manager::UserManager::Get()->IsCurrentUserOwner()) { |
+ user_manager::User* user = |
bartfab (slow)
2015/04/14 14:10:09
Nit: Const pointer.
Ivan Podogov
2015/04/14 14:40:37
Done.
|
+ user_manager::UserManager::Get()->GetActiveUser(); |
+ if (user) { |
+ Profile* profile = ProfileHelper::Get()->GetProfileByUser(user); |
bartfab (slow)
2015/04/14 14:10:09
Nit: Const pointer.
Ivan Podogov
2015/04/14 14:40:37
Done.
|
+ if (profile) { |
+ OwnerSettingsServiceChromeOS* service = |
bartfab (slow)
2015/04/14 14:10:09
Nit: Const pointer.
Ivan Podogov
2015/04/14 14:40:37
Done.
|
+ OwnerSettingsServiceChromeOSFactory::GetForBrowserContext(profile); |
+ if (service) |
+ service->SetBoolean(kSystemUse24HourClock, use_24_hour_clock); |
+ } |
+ } |
+ } |
} |
void SystemTrayDelegateChromeOS::UpdateShowLogoutButtonInTray() { |
@@ -1120,8 +1133,17 @@ void SystemTrayDelegateChromeOS::LoggedInStateChanged() { |
// user's profile has actually been loaded (http://crbug.com/317745). The |
// system tray's time format is updated at login via SetProfile(). |
if (user_manager::UserManager::Get()->IsCurrentUserOwner()) { |
- CrosSettings::Get()->SetBoolean(kSystemUse24HourClock, |
- ShouldUse24HourClock()); |
+ user_manager::User* user = |
+ user_manager::UserManager::Get()->GetActiveUser(); |
+ if (user) { |
+ Profile* profile = ProfileHelper::Get()->GetProfileByUser(user); |
+ if (profile) { |
+ OwnerSettingsServiceChromeOS* service = |
+ OwnerSettingsServiceChromeOSFactory::GetForBrowserContext(profile); |
+ if (service) |
+ service->SetBoolean(kSystemUse24HourClock, ShouldUse24HourClock()); |
+ } |
+ } |
} |
} |