ChromeOS: implement per-user time zone preferences

Desktop / Chromium - alemate [chromium.org] - 11 August 2017 01:22 EDT

Historically ChromeOS had only one global time zone preference. But now time settings become complicate and we need to support per-user time zone preferences.

TBR=phajdan.jr@chromium.org

BUG=622555,699472 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

Review-Url: https://codereview.chromium.org/2849823003 Cr-Commit-Position: refs/heads/master@{#493673}

2cb0d75 ChromeOS: implement per-user time zone preferences.
chrome/browser/about_flags.cc | 5 +-
chrome/browser/chromeos/BUILD.gn | 2 -
.../chromeos/extensions/info_private_api.cc | 16 ++-
.../chromeos/extensions/info_private_apitest.cc | 4 +-
.../chromeos/login/screens/network_screen.cc | 8 +-
.../chromeos/login/ui/login_display_host_impl.cc | 21 +++-
.../login/users/chrome_user_manager_impl.cc | 1 +
chrome/browser/chromeos/login/wizard_controller.cc | 5 +-
.../policy/browser_policy_connector_chromeos.cc | 4 +-
chrome/browser/chromeos/preferences.cc | 21 ++++
.../chromeos/settings/system_settings_provider.cc | 10 +-
.../chromeos/settings/system_settings_provider.h | 1 +
chrome/browser/chromeos/system/timezone_util.cc | 133 ++++++++++++++++++++-
chrome/browser/chromeos/system/timezone_util.h | 25 ++++
.../extensions/api/settings_private/prefs_util.cc | 87 ++++++++++----
chrome/browser/flag_descriptions.cc | 5 +
chrome/browser/flag_descriptions.h | 3 +
.../browser/resources/options/browser_options.html | 2 +-
.../settings/date_time_page/date_time_page.html | 68 ++++++++---
.../settings/date_time_page/date_time_page.js | 57 ++++++++-
chrome/browser/ui/webui/chromeos/set_time_ui.cc | 10 +-
.../chromeos/core_chromeos_options_handler.cc | 44 +++++--
chrome/common/pref_names.cc | 7 ++
chrome/common/pref_names.h | 2 +
.../data/webui/settings/date_time_page_tests.js | 126 ++++++++++++++-----
chromeos/chromeos_switches.cc | 3 +
chromeos/chromeos_switches.h | 1 +
chromeos/settings/cros_settings_names.cc | 3 +
chromeos/settings/cros_settings_names.h | 2 +
tools/metrics/histograms/enums.xml | 1 +
30 files changed, 565 insertions(+), 112 deletions(-)

Upstream: git.chromium.org


  • Share