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

Side by Side Diff: chrome/browser/chromeos/policy/browser_policy_connector_chromeos.cc

Issue 2849823003: ChromeOS: implement per-user time zone preferences. (Closed)
Patch Set: Fixed tests. Created 3 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" 5 #include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
11 #include "base/command_line.h" 11 #include "base/command_line.h"
12 #include "base/files/file_path.h" 12 #include "base/files/file_path.h"
13 #include "base/location.h" 13 #include "base/location.h"
14 #include "base/logging.h" 14 #include "base/logging.h"
15 #include "base/memory/ptr_util.h" 15 #include "base/memory/ptr_util.h"
16 #include "base/path_service.h" 16 #include "base/path_service.h"
17 #include "base/sequenced_task_runner.h" 17 #include "base/sequenced_task_runner.h"
18 #include "base/single_thread_task_runner.h" 18 #include "base/single_thread_task_runner.h"
19 #include "base/strings/utf_string_conversions.h" 19 #include "base/strings/utf_string_conversions.h"
20 #include "base/threading/sequenced_worker_pool.h" 20 #include "base/threading/sequenced_worker_pool.h"
21 #include "base/threading/thread_task_runner_handle.h" 21 #include "base/threading/thread_task_runner_handle.h"
22 #include "chrome/browser/browser_process.h"
22 #include "chrome/browser/chromeos/attestation/attestation_ca_client.h" 23 #include "chrome/browser/chromeos/attestation/attestation_ca_client.h"
23 #include "chrome/browser/chromeos/policy/active_directory_policy_manager.h" 24 #include "chrome/browser/chromeos/policy/active_directory_policy_manager.h"
24 #include "chrome/browser/chromeos/policy/affiliated_cloud_policy_invalidator.h" 25 #include "chrome/browser/chromeos/policy/affiliated_cloud_policy_invalidator.h"
25 #include "chrome/browser/chromeos/policy/affiliated_invalidation_service_provide r.h" 26 #include "chrome/browser/chromeos/policy/affiliated_invalidation_service_provide r.h"
26 #include "chrome/browser/chromeos/policy/affiliated_invalidation_service_provide r_impl.h" 27 #include "chrome/browser/chromeos/policy/affiliated_invalidation_service_provide r_impl.h"
27 #include "chrome/browser/chromeos/policy/bluetooth_policy_handler.h" 28 #include "chrome/browser/chromeos/policy/bluetooth_policy_handler.h"
28 #include "chrome/browser/chromeos/policy/device_cloud_policy_initializer.h" 29 #include "chrome/browser/chromeos/policy/device_cloud_policy_initializer.h"
29 #include "chrome/browser/chromeos/policy/device_cloud_policy_store_chromeos.h" 30 #include "chrome/browser/chromeos/policy/device_cloud_policy_store_chromeos.h"
30 #include "chrome/browser/chromeos/policy/device_local_account.h" 31 #include "chrome/browser/chromeos/policy/device_local_account.h"
31 #include "chrome/browser/chromeos/policy/device_local_account_policy_service.h" 32 #include "chrome/browser/chromeos/policy/device_local_account_policy_service.h"
(...skipping 18 matching lines...) Expand all
50 #include "chromeos/network/onc/onc_certificate_importer_impl.h" 51 #include "chromeos/network/onc/onc_certificate_importer_impl.h"
51 #include "chromeos/settings/cros_settings_names.h" 52 #include "chromeos/settings/cros_settings_names.h"
52 #include "chromeos/settings/cros_settings_provider.h" 53 #include "chromeos/settings/cros_settings_provider.h"
53 #include "chromeos/settings/timezone_settings.h" 54 #include "chromeos/settings/timezone_settings.h"
54 #include "chromeos/system/statistics_provider.h" 55 #include "chromeos/system/statistics_provider.h"
55 #include "components/policy/core/common/cloud/cloud_policy_client.h" 56 #include "components/policy/core/common/cloud/cloud_policy_client.h"
56 #include "components/policy/core/common/cloud/cloud_policy_refresh_scheduler.h" 57 #include "components/policy/core/common/cloud/cloud_policy_refresh_scheduler.h"
57 #include "components/policy/core/common/proxy_policy_provider.h" 58 #include "components/policy/core/common/proxy_policy_provider.h"
58 #include "components/policy/proto/device_management_backend.pb.h" 59 #include "components/policy/proto/device_management_backend.pb.h"
59 #include "components/prefs/pref_registry_simple.h" 60 #include "components/prefs/pref_registry_simple.h"
61 #include "components/prefs/pref_service.h"
60 #include "content/public/browser/browser_thread.h" 62 #include "content/public/browser/browser_thread.h"
61 #include "google_apis/gaia/gaia_auth_util.h" 63 #include "google_apis/gaia/gaia_auth_util.h"
62 #include "net/url_request/url_request_context_getter.h" 64 #include "net/url_request/url_request_context_getter.h"
63 65
64 using content::BrowserThread; 66 using content::BrowserThread;
65 67
66 namespace policy { 68 namespace policy {
67 69
68 namespace { 70 namespace {
69 71
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 &BrowserPolicyConnectorChromeOS::SetTimezoneIfPolicyAvailable, 337 &BrowserPolicyConnectorChromeOS::SetTimezoneIfPolicyAvailable,
336 weak_ptr_factory_.GetWeakPtr())); 338 weak_ptr_factory_.GetWeakPtr()));
337 339
338 if (result != Provider::TRUSTED) 340 if (result != Provider::TRUSTED)
339 return; 341 return;
340 342
341 std::string timezone; 343 std::string timezone;
342 if (chromeos::CrosSettings::Get()->GetString(chromeos::kSystemTimezonePolicy, 344 if (chromeos::CrosSettings::Get()->GetString(chromeos::kSystemTimezonePolicy,
343 &timezone) && 345 &timezone) &&
344 !timezone.empty()) { 346 !timezone.empty()) {
347 g_browser_process->local_state()->SetString(prefs::kSigninScreenTimezone,
348 timezone);
345 chromeos::system::TimezoneSettings::GetInstance()->SetTimezoneFromID( 349 chromeos::system::TimezoneSettings::GetInstance()->SetTimezoneFromID(
346 base::UTF8ToUTF16(timezone)); 350 base::UTF8ToUTF16(timezone));
347 } 351 }
348 } 352 }
349 353
350 void BrowserPolicyConnectorChromeOS::RestartDeviceCloudPolicyInitializer() { 354 void BrowserPolicyConnectorChromeOS::RestartDeviceCloudPolicyInitializer() {
351 device_cloud_policy_initializer_ = 355 device_cloud_policy_initializer_ =
352 base::MakeUnique<DeviceCloudPolicyInitializer>( 356 base::MakeUnique<DeviceCloudPolicyInitializer>(
353 local_state_, device_management_service(), GetBackgroundTaskRunner(), 357 local_state_, device_management_service(), GetBackgroundTaskRunner(),
354 install_attributes_.get(), state_keys_broker_.get(), 358 install_attributes_.get(), state_keys_broker_.get(),
(...skipping 20 matching lines...) Expand all
375 device_cloud_policy_manager_->device_store()->policy(); 379 device_cloud_policy_manager_->device_store()->policy();
376 if (policy_data) { 380 if (policy_data) {
377 affiliation_ids.insert(policy_data->device_affiliation_ids().begin(), 381 affiliation_ids.insert(policy_data->device_affiliation_ids().begin(),
378 policy_data->device_affiliation_ids().end()); 382 policy_data->device_affiliation_ids().end());
379 } 383 }
380 } 384 }
381 return affiliation_ids; 385 return affiliation_ids;
382 } 386 }
383 387
384 } // namespace policy 388 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698