Chromium Code Reviews| Index: chrome/browser/browser_process_platform_part_chromeos.cc |
| diff --git a/chrome/browser/browser_process_platform_part_chromeos.cc b/chrome/browser/browser_process_platform_part_chromeos.cc |
| index 9ae7863744c1f7a3376b9ef05e2fd6629ce9fdf4..5345e6ec8f06aacb38aa9a8b503363a7a4164140 100644 |
| --- a/chrome/browser/browser_process_platform_part_chromeos.cc |
| +++ b/chrome/browser/browser_process_platform_part_chromeos.cc |
| @@ -12,16 +12,30 @@ |
| #include "chrome/browser/chromeos/login/session/chrome_session_manager.h" |
| #include "chrome/browser/chromeos/login/users/chrome_user_manager_impl.h" |
| #include "chrome/browser/chromeos/memory/oom_priority_manager.h" |
| +#include "chrome/browser/chromeos/net/delay_network_call.h" |
| #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" |
| #include "chrome/browser/chromeos/profiles/profile_helper.h" |
| #include "chrome/browser/chromeos/settings/cros_settings.h" |
| #include "chrome/browser/chromeos/system/automatic_reboot_manager.h" |
| #include "chrome/browser/chromeos/system/device_disabling_manager.h" |
| #include "chrome/browser/chromeos/system/device_disabling_manager_default_delegate.h" |
| +#include "chrome/browser/chromeos/system/timezone_util.h" |
| #include "chrome/browser/profiles/profile.h" |
| +#include "chromeos/geolocation/simple_geolocation_provider.h" |
| #include "components/session_manager/core/session_manager.h" |
| #include "components/user_manager/user_manager.h" |
| +namespace { |
| + |
| +// We need DelayNetworkCall() with different order of arguments to be able to |
|
sky
2015/01/20 16:47:30
Is there a reason you can't change the signature i
Alexander Alekseev
2015/01/22 18:55:22
Probably no.
Done.
|
| +// bind the first argument. |
| +void DelayNetworkCallWithDelay(base::TimeDelta delay, |
| + const base::Closure& callback) { |
| + chromeos::DelayNetworkCall(callback, delay); |
| +} |
| + |
| +} // anonymous namespace |
| + |
| BrowserProcessPlatformPart::BrowserProcessPlatformPart() |
| : created_profile_helper_(false) { |
| } |
| @@ -107,6 +121,19 @@ BrowserProcessPlatformPart::browser_policy_connector_chromeos() { |
| g_browser_process->browser_policy_connector()); |
| } |
| +chromeos::TimeZoneResolver* BrowserProcessPlatformPart::timezone_resolver() { |
| + if (!timezone_resolver_.get()) { |
| + timezone_resolver_.reset(new chromeos::TimeZoneResolver( |
| + g_browser_process->system_request_context(), |
| + chromeos::SimpleGeolocationProvider::DefaultGeolocationProviderURL(), |
| + base::Bind(&chromeos::system::ApplyTimeZone), |
| + base::Bind(&DelayNetworkCallWithDelay, |
| + base::TimeDelta::FromMilliseconds( |
| + chromeos::kDefaultNetworkRetryDelayMS)))); |
| + } |
| + return timezone_resolver_.get(); |
| +} |
| + |
| void BrowserProcessPlatformPart::StartTearDown() { |
| profile_helper_.reset(); |
| } |