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

Side by Side Diff: chrome/browser/chromeos/user_cros_settings_provider.cc

Issue 6679040: [cros] Add checkbox for toggling data roaming setting. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: js/css cleanup Created 9 years, 9 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/user_cros_settings_provider.h" 5 #include "chrome/browser/chromeos/user_cros_settings_provider.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 9
10 #include "base/hash_tables.h" 10 #include "base/hash_tables.h"
(...skipping 18 matching lines...) Expand all
29 29
30 const char kTrueIncantation[] = "true"; 30 const char kTrueIncantation[] = "true";
31 const char kFalseIncantation[] = "false"; 31 const char kFalseIncantation[] = "false";
32 const char kTrustedSuffix[] = "/trusted"; 32 const char kTrustedSuffix[] = "/trusted";
33 33
34 // For all our boolean settings following is applicable: 34 // For all our boolean settings following is applicable:
35 // true is default permissive value and false is safe prohibitic value. 35 // true is default permissive value and false is safe prohibitic value.
36 const char* kBooleanSettings[] = { 36 const char* kBooleanSettings[] = {
37 kAccountsPrefAllowNewUser, 37 kAccountsPrefAllowNewUser,
38 kAccountsPrefAllowGuest, 38 kAccountsPrefAllowGuest,
39 kAccountsPrefShowUserNamesOnSignIn 39 kAccountsPrefShowUserNamesOnSignIn,
40 kSignedDataRoamingEnabled,
Denis Lagno 2011/03/16 17:09:35 I think it should default to false. But in this c
Nikita (slow) 2011/03/17 10:45:57 Done.
40 }; 41 };
41 42
42 const char* kStringSettings[] = { 43 const char* kStringSettings[] = {
43 kDeviceOwner 44 kDeviceOwner
44 }; 45 };
45 46
46 const char* kListSettings[] = { 47 const char* kListSettings[] = {
47 kAccountsPrefUsers 48 kAccountsPrefUsers
48 }; 49 };
49 50
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after
401 bool UserCrosSettingsProvider::RequestTrustedAllowNewUser(Task* callback) { 402 bool UserCrosSettingsProvider::RequestTrustedAllowNewUser(Task* callback) {
402 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity( 403 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity(
403 kAccountsPrefAllowNewUser, callback); 404 kAccountsPrefAllowNewUser, callback);
404 } 405 }
405 406
406 bool UserCrosSettingsProvider::RequestTrustedShowUsersOnSignin(Task* callback) { 407 bool UserCrosSettingsProvider::RequestTrustedShowUsersOnSignin(Task* callback) {
407 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity( 408 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity(
408 kAccountsPrefShowUserNamesOnSignIn, callback); 409 kAccountsPrefShowUserNamesOnSignIn, callback);
409 } 410 }
410 411
412 bool UserCrosSettingsProvider::RequestTrustedDataRoamingEnabled(
413 Task* callback) {
414 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity(
415 kSignedDataRoamingEnabled, callback);
416 }
417
411 bool UserCrosSettingsProvider::RequestTrustedOwner(Task* callback) { 418 bool UserCrosSettingsProvider::RequestTrustedOwner(Task* callback) {
412 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity( 419 return UserCrosSettingsTrust::GetInstance()->RequestTrustedEntity(
413 kDeviceOwner, callback); 420 kDeviceOwner, callback);
414 } 421 }
415 422
416 // static 423 // static
417 bool UserCrosSettingsProvider::cached_allow_guest() { 424 bool UserCrosSettingsProvider::cached_allow_guest() {
418 // Trigger prefetching if singleton object still does not exist. 425 // Trigger prefetching if singleton object still does not exist.
419 UserCrosSettingsTrust::GetInstance(); 426 UserCrosSettingsTrust::GetInstance();
420 return g_browser_process->local_state()->GetBoolean(kAccountsPrefAllowGuest); 427 return g_browser_process->local_state()->GetBoolean(kAccountsPrefAllowGuest);
421 } 428 }
422 429
423 // static 430 // static
424 bool UserCrosSettingsProvider::cached_allow_new_user() { 431 bool UserCrosSettingsProvider::cached_allow_new_user() {
425 // Trigger prefetching if singleton object still does not exist. 432 // Trigger prefetching if singleton object still does not exist.
426 UserCrosSettingsTrust::GetInstance(); 433 UserCrosSettingsTrust::GetInstance();
427 return g_browser_process->local_state()->GetBoolean( 434 return g_browser_process->local_state()->GetBoolean(
428 kAccountsPrefAllowNewUser); 435 kAccountsPrefAllowNewUser);
429 } 436 }
430 437
431 // static 438 // static
439 bool UserCrosSettingsProvider::cached_data_roaming_enabled() {
440 // Trigger prefetching if singleton object still does not exist.
441 UserCrosSettingsTrust::GetInstance();
442 return g_browser_process->local_state()->GetBoolean(
443 kSignedDataRoamingEnabled);
444 }
445
446 // static
432 bool UserCrosSettingsProvider::cached_show_users_on_signin() { 447 bool UserCrosSettingsProvider::cached_show_users_on_signin() {
433 // Trigger prefetching if singleton object still does not exist. 448 // Trigger prefetching if singleton object still does not exist.
434 UserCrosSettingsTrust::GetInstance(); 449 UserCrosSettingsTrust::GetInstance();
435 return g_browser_process->local_state()->GetBoolean( 450 return g_browser_process->local_state()->GetBoolean(
436 kAccountsPrefShowUserNamesOnSignIn); 451 kAccountsPrefShowUserNamesOnSignIn);
437 } 452 }
438 453
439 // static 454 // static
440 const ListValue* UserCrosSettingsProvider::cached_whitelist() { 455 const ListValue* UserCrosSettingsProvider::cached_whitelist() {
441 PrefService* prefs = g_browser_process->local_state(); 456 PrefService* prefs = g_browser_process->local_state();
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
496 ListValue* user_list = new ListValue; 511 ListValue* user_list = new ListValue;
497 GetUserWhitelist(user_list); 512 GetUserWhitelist(user_list);
498 *out_value = user_list; 513 *out_value = user_list;
499 return true; 514 return true;
500 } 515 }
501 516
502 return false; 517 return false;
503 } 518 }
504 519
505 bool UserCrosSettingsProvider::HandlesSetting(const std::string& path) { 520 bool UserCrosSettingsProvider::HandlesSetting(const std::string& path) {
506 return ::StartsWithASCII(path, "cros.accounts.", true); 521 return ::StartsWithASCII(path, "cros.accounts.", true) ||
522 ::StartsWithASCII(path, "cros.signed.", true);
507 } 523 }
508 524
509 void UserCrosSettingsProvider::WhitelistUser(const std::string& email) { 525 void UserCrosSettingsProvider::WhitelistUser(const std::string& email) {
510 SignedSettingsHelper::Get()->StartWhitelistOp( 526 SignedSettingsHelper::Get()->StartWhitelistOp(
511 email, true, UserCrosSettingsTrust::GetInstance()); 527 email, true, UserCrosSettingsTrust::GetInstance());
512 PrefService* prefs = g_browser_process->local_state(); 528 PrefService* prefs = g_browser_process->local_state();
513 ListValue* cached_whitelist = prefs->GetMutableList(kAccountsPrefUsers); 529 ListValue* cached_whitelist = prefs->GetMutableList(kAccountsPrefUsers);
514 cached_whitelist->Append(Value::CreateStringValue(email)); 530 cached_whitelist->Append(Value::CreateStringValue(email));
515 prefs->ScheduleSavePersistentPrefs(); 531 prefs->ScheduleSavePersistentPrefs();
516 } 532 }
517 533
518 void UserCrosSettingsProvider::UnwhitelistUser(const std::string& email) { 534 void UserCrosSettingsProvider::UnwhitelistUser(const std::string& email) {
519 SignedSettingsHelper::Get()->StartWhitelistOp( 535 SignedSettingsHelper::Get()->StartWhitelistOp(
520 email, false, UserCrosSettingsTrust::GetInstance()); 536 email, false, UserCrosSettingsTrust::GetInstance());
521 537
522 PrefService* prefs = g_browser_process->local_state(); 538 PrefService* prefs = g_browser_process->local_state();
523 ListValue* cached_whitelist = prefs->GetMutableList(kAccountsPrefUsers); 539 ListValue* cached_whitelist = prefs->GetMutableList(kAccountsPrefUsers);
524 StringValue email_value(email); 540 StringValue email_value(email);
525 if (cached_whitelist->Remove(email_value) != -1) 541 if (cached_whitelist->Remove(email_value) != -1)
526 prefs->ScheduleSavePersistentPrefs(); 542 prefs->ScheduleSavePersistentPrefs();
527 } 543 }
528 544
529 // static 545 // static
530 void UserCrosSettingsProvider::UpdateCachedOwner(const std::string& email) { 546 void UserCrosSettingsProvider::UpdateCachedOwner(const std::string& email) {
531 UpdateCacheString(kDeviceOwner, email, USE_VALUE_SUPPLIED); 547 UpdateCacheString(kDeviceOwner, email, USE_VALUE_SUPPLIED);
532 } 548 }
533 549
534 } // namespace chromeos 550 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698