Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(222)

Unified Diff: chrome/browser/chromeos/login/ui/login_display_host_impl.cc

Issue 2849823003: ChromeOS: implement per-user time zone preferences. (Closed)
Patch Set: Rebased. Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/login/ui/login_display_host_impl.cc
diff --git a/chrome/browser/chromeos/login/ui/login_display_host_impl.cc b/chrome/browser/chromeos/login/ui/login_display_host_impl.cc
index 29c0424860f10e02df1af6c0d64f7b5b98d45379..d788e54e38baced28a53de676a7c29fb021f31e8 100644
--- a/chrome/browser/chromeos/login/ui/login_display_host_impl.cc
+++ b/chrome/browser/chromeos/login/ui/login_display_host_impl.cc
@@ -190,20 +190,29 @@ void ShowLoginWizardFinish(
chromeos::LoginDisplayHost* display_host) {
TRACE_EVENT0("chromeos", "ShowLoginWizard::ShowLoginWizardFinish");
+ // Restore system timezone.
+ std::string timezone;
+ if (chromeos::system::PerUserTimezoneEnabled()) {
+ timezone = g_browser_process->local_state()->GetString(
+ prefs::kSigninScreenTimezone);
+ }
+
if (ShouldShowSigninScreen(first_screen)) {
display_host->StartSignInScreen(chromeos::LoginScreenContext());
} else {
display_host->StartWizard(first_screen);
// Set initial timezone if specified by customization.
- const std::string timezone_name = startup_manifest->initial_timezone();
- VLOG(1) << "Initial time zone: " << timezone_name;
+ const std::string customization_timezone =
+ startup_manifest->initial_timezone();
+ VLOG(1) << "Initial time zone: " << customization_timezone;
// Apply locale customizations only once to preserve whatever locale
// user has changed to during OOBE.
- if (!timezone_name.empty()) {
- chromeos::system::TimezoneSettings::GetInstance()->SetTimezoneFromID(
- base::UTF8ToUTF16(timezone_name));
- }
+ if (!customization_timezone.empty())
+ timezone = customization_timezone;
+ }
+ if (!timezone.empty()) {
+ chromeos::system::SetSystemAndSigninScreenTimezone(timezone);
}
}

Powered by Google App Engine
This is Rietveld 408576698