| 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
|
| +// 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();
|
| }
|
|
|