| Index: chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc
|
| diff --git a/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc b/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc
|
| index a8088e314fe172e474895b7e19d59e85ea2cd95c..2f18b14e6b7d1b7dfaadab8bc5518c20bc257202 100644
|
| --- a/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc
|
| +++ b/chrome/browser/chromeos/login/users/chrome_user_manager_impl.cc
|
| @@ -36,6 +36,7 @@
|
| #include "chrome/browser/chromeos/profiles/multiprofiles_session_aborted_dialog.h"
|
| #include "chrome/browser/chromeos/profiles/profile_helper.h"
|
| #include "chrome/browser/chromeos/session_length_limiter.h"
|
| +#include "chrome/browser/chromeos/system/timezone_util.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| #include "chrome/browser/signin/easy_unlock_service.h"
|
| #include "chrome/browser/supervised_user/chromeos/manager_password_service_factory.h"
|
| @@ -378,6 +379,7 @@ void ChromeUserManagerImpl::Observe(
|
| sync_observer->StartObserving();
|
| multi_profile_user_controller_->StartObserving(profile);
|
| }
|
| + StartUserTimeZoneRefresh(profile);
|
| }
|
| break;
|
| }
|
| @@ -1077,4 +1079,18 @@ void ChromeUserManagerImpl::UpdateNumberOfUsers() {
|
| base::StringPrintf("%" PRIuS, GetLoggedInUsers().size()));
|
| }
|
|
|
| +void ChromeUserManagerImpl::StartUserTimeZoneRefresh(Profile* profile) {
|
| + if (!base::CommandLine::ForCurrentProcess()->HasSwitch(
|
| + chromeos::switches::kEnableTimeZoneTracking)) {
|
| + return;
|
| + }
|
| +
|
| + if (profile->GetPrefs()->GetBoolean(prefs::kResolveTimezoneByGeolocation) &&
|
| + !system::HasSystemTimezonePolicy()) {
|
| + g_browser_process->platform_part()->timezone_resolver()->Start();
|
| + } else {
|
| + g_browser_process->platform_part()->timezone_resolver()->Stop();
|
| + }
|
| +}
|
| +
|
| } // namespace chromeos
|
|
|