| Index: chrome/browser/ui/webui/options/browser_options_handler.cc
|
| diff --git a/chrome/browser/ui/webui/options/browser_options_handler.cc b/chrome/browser/ui/webui/options/browser_options_handler.cc
|
| index 514b732fe09e4c3f29c0a86aedebe79bb7d960c4..5123b6ca3453bc7eb4dd6eafa63177245d431832 100644
|
| --- a/chrome/browser/ui/webui/options/browser_options_handler.cc
|
| +++ b/chrome/browser/ui/webui/options/browser_options_handler.cc
|
| @@ -682,9 +682,6 @@ void BrowserOptionsHandler::GetLocalizedValues(base::DictionaryValue* values) {
|
| values->SetBoolean("enableTimeZoneTrackingOption",
|
| !have_disable_time_zone_tracking_option_switch &&
|
| !chromeos::system::HasSystemTimezonePolicy());
|
| - values->SetBoolean("resolveTimezoneByGeolocationInitialValue",
|
| - Profile::FromWebUI(web_ui())->GetPrefs()->GetBoolean(
|
| - prefs::kResolveTimezoneByGeolocation));
|
| #endif
|
| }
|
|
|
| @@ -981,6 +978,10 @@ void BrowserOptionsHandler::InitializeHandler() {
|
| chromeos::kSystemTimezonePolicy,
|
| base::Bind(&BrowserOptionsHandler::OnSystemTimezonePolicyChanged,
|
| weak_ptr_factory_.GetWeakPtr()));
|
| + profile_pref_registrar_.Add(
|
| + prefs::kResolveTimezoneByGeolocation,
|
| + base::Bind(&BrowserOptionsHandler::OnResolveTimezoneByGeolocationChanged,
|
| + base::Unretained(this)));
|
| #else // !defined(OS_CHROMEOS)
|
| profile_pref_registrar_.Add(
|
| prefs::kProxy,
|
| @@ -989,6 +990,17 @@ void BrowserOptionsHandler::InitializeHandler() {
|
| #endif // !defined(OS_CHROMEOS)
|
| }
|
|
|
| +#if defined(OS_CHROMEOS)
|
| +void BrowserOptionsHandler::OnResolveTimezoneByGeolocationChanged() {
|
| + PrefService* pref_service = Profile::FromWebUI(web_ui())->GetPrefs();
|
| + const bool resolve_timezone_by_geolocation =
|
| + pref_service->GetBoolean(prefs::kResolveTimezoneByGeolocation);
|
| + web_ui()->CallJavascriptFunction(
|
| + "BrowserOptions.onResolveTimezoneByGeolocationChanged",
|
| + base::FundamentalValue(resolve_timezone_by_geolocation));
|
| +}
|
| +#endif // defined(OS_CHROMEOS)
|
| +
|
| void BrowserOptionsHandler::InitializePage() {
|
| page_initialized_ = true;
|
|
|
| @@ -1040,6 +1052,8 @@ void BrowserOptionsHandler::InitializePage() {
|
| OnConsumerManagementStatusChanged();
|
| consumer_management->AddObserver(this);
|
| }
|
| +
|
| + OnResolveTimezoneByGeolocationChanged();
|
| #endif
|
| }
|
|
|
|
|