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

Side by Side Diff: chrome/browser/chromeos/login/login_utils.cc

Issue 12225046: [cros] Set profile pref for locally managed users (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review Created 7 years, 10 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
« no previous file with comments | « no previous file | chrome/browser/profiles/profile_manager.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/login/login_utils.h" 5 #include "chrome/browser/chromeos/login/login_utils.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <vector> 8 #include <vector>
9 9
10 #include "ash/ash_switches.h" 10 #include "ash/ash_switches.h"
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
246 const CommandLine& base_command_line, 246 const CommandLine& base_command_line,
247 CommandLine *command_line) OVERRIDE; 247 CommandLine *command_line) OVERRIDE;
248 248
249 private: 249 private:
250 // Restarts OAuth session authentication check. 250 // Restarts OAuth session authentication check.
251 void KickStartAuthentication(Profile* profile); 251 void KickStartAuthentication(Profile* profile);
252 252
253 // Check user's profile for kApplicationLocale setting. 253 // Check user's profile for kApplicationLocale setting.
254 void RespectLocalePreference(Profile* pref); 254 void RespectLocalePreference(Profile* pref);
255 255
256 // Initializes basic preferences for newly created profile. 256 // Callback for Profile::CREATE_STATUS_CREATED profile state.
257 // Initializes basic preferences for newly created profile. Any other
258 // profile early initialization that needs to happen before
259 // ProfileManager::DoFinalInit() gets called is also done here.
257 void InitProfilePreferences(Profile* user_profile); 260 void InitProfilePreferences(Profile* user_profile);
258 261
259 // Callback for asynchronous profile creation. 262 // Callback for asynchronous profile creation.
260 void OnProfileCreated(Profile* profile, 263 void OnProfileCreated(Profile* profile,
261 Profile::CreateStatus status); 264 Profile::CreateStatus status);
262 265
266 // Callback for Profile::CREATE_STATUS_INITIALIZED profile state.
267 // Profile is created, extensions and promo resources are initialized.
268 void UserProfileInitialized(Profile* user_profile);
269
263 // Callback to resume profile creation after transferring auth data from 270 // Callback to resume profile creation after transferring auth data from
264 // the authentication profile. 271 // the authentication profile.
265 void CompleteProfileCreate(Profile* user_profile); 272 void CompleteProfileCreate(Profile* user_profile);
266 273
267 // Finalized profile preparation. 274 // Finalized profile preparation.
268 void FinalizePrepareProfile(Profile* user_profile); 275 void FinalizePrepareProfile(Profile* user_profile);
269 276
270 // Restores GAIA auth cookies for the created user profile from OAuth2 token. 277 // Restores GAIA auth cookies for the created user profile from OAuth2 token.
271 void RestoreAuthSession(Profile* user_profile, 278 void RestoreAuthSession(Profile* user_profile,
272 bool restore_from_auth_cookies); 279 bool restore_from_auth_cookies);
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
448 455
449 void LoginUtilsImpl::DelegateDeleted(LoginUtils::Delegate* delegate) { 456 void LoginUtilsImpl::DelegateDeleted(LoginUtils::Delegate* delegate) {
450 if (delegate_ == delegate) 457 if (delegate_ == delegate)
451 delegate_ = NULL; 458 delegate_ = NULL;
452 } 459 }
453 460
454 void LoginUtilsImpl::InitProfilePreferences(Profile* user_profile) { 461 void LoginUtilsImpl::InitProfilePreferences(Profile* user_profile) {
455 if (UserManager::Get()->IsCurrentUserNew()) 462 if (UserManager::Get()->IsCurrentUserNew())
456 SetFirstLoginPrefs(user_profile->GetPrefs()); 463 SetFirstLoginPrefs(user_profile->GetPrefs());
457 464
458 if (!UserManager::Get()->IsLoggedInAsLocallyManagedUser()) { 465 if (UserManager::Get()->IsLoggedInAsLocallyManagedUser()) {
466 user_profile->GetPrefs()->SetBoolean(prefs::kProfileIsManaged, true);
467 } else {
459 // Make sure that the google service username is properly set (we do this 468 // Make sure that the google service username is properly set (we do this
460 // on every sign in, not just the first login, to deal with existing 469 // on every sign in, not just the first login, to deal with existing
461 // profiles that might not have it set yet). 470 // profiles that might not have it set yet).
462 StringPrefMember google_services_username; 471 StringPrefMember google_services_username;
463 google_services_username.Init(prefs::kGoogleServicesUsername, 472 google_services_username.Init(prefs::kGoogleServicesUsername,
464 user_profile->GetPrefs()); 473 user_profile->GetPrefs());
465 google_services_username.SetValue( 474 google_services_username.SetValue(
466 UserManager::Get()->GetLoggedInUser()->display_email()); 475 UserManager::Get()->GetLoggedInUser()->display_email());
467 } 476 }
468 477
(...skipping 16 matching lines...) Expand all
485 RespectLocalePreference(user_profile); 494 RespectLocalePreference(user_profile);
486 } 495 }
487 496
488 void LoginUtilsImpl::OnProfileCreated( 497 void LoginUtilsImpl::OnProfileCreated(
489 Profile* user_profile, 498 Profile* user_profile,
490 Profile::CreateStatus status) { 499 Profile::CreateStatus status) {
491 CHECK(user_profile); 500 CHECK(user_profile);
492 501
493 switch (status) { 502 switch (status) {
494 case Profile::CREATE_STATUS_INITIALIZED: 503 case Profile::CREATE_STATUS_INITIALIZED:
504 UserProfileInitialized(user_profile);
495 break; 505 break;
496 case Profile::CREATE_STATUS_CREATED: { 506 case Profile::CREATE_STATUS_CREATED: {
Dmitry Polukhin 2013/02/11 09:50:12 nit, please remove {} they are not required.
Nikita (slow) 2013/02/11 10:16:39 Done.
497 InitProfilePreferences(user_profile); 507 InitProfilePreferences(user_profile);
498 return; 508 break;
499 } 509 }
500 case Profile::CREATE_STATUS_FAIL: 510 case Profile::CREATE_STATUS_FAIL:
501 default: 511 default:
502 NOTREACHED(); 512 NOTREACHED();
503 return; 513 break;
504 } 514 }
515 }
505 516
517 void LoginUtilsImpl::UserProfileInitialized(Profile* user_profile) {
506 BootTimesLoader* btl = BootTimesLoader::Get(); 518 BootTimesLoader* btl = BootTimesLoader::Get();
507 btl->AddLoginTimeMarker("UserProfileGotten", false); 519 btl->AddLoginTimeMarker("UserProfileGotten", false);
508 520
509 if (using_oauth_) { 521 if (using_oauth_) {
510 // Transfer proxy authentication cache, cookies (optionally) and server 522 // Transfer proxy authentication cache, cookies (optionally) and server
511 // bound certs from the profile that was used for authentication. This 523 // bound certs from the profile that was used for authentication. This
512 // profile contains cookies that auth extension should have already put in 524 // profile contains cookies that auth extension should have already put in
513 // place that will ensure that the newly created session is authenticated 525 // place that will ensure that the newly created session is authenticated
514 // for the websites that work with the used authentication schema. 526 // for the websites that work with the used authentication schema.
515 ProfileAuthData::Transfer(authenticator_->authentication_profile(), 527 ProfileAuthData::Transfer(authenticator_->authentication_profile(),
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
1044 bool LoginUtils::IsWhitelisted(const std::string& username) { 1056 bool LoginUtils::IsWhitelisted(const std::string& username) {
1045 CrosSettings* cros_settings = CrosSettings::Get(); 1057 CrosSettings* cros_settings = CrosSettings::Get();
1046 bool allow_new_user = false; 1058 bool allow_new_user = false;
1047 cros_settings->GetBoolean(kAccountsPrefAllowNewUser, &allow_new_user); 1059 cros_settings->GetBoolean(kAccountsPrefAllowNewUser, &allow_new_user);
1048 if (allow_new_user) 1060 if (allow_new_user)
1049 return true; 1061 return true;
1050 return cros_settings->FindEmailInList(kAccountsPrefUsers, username); 1062 return cros_settings->FindEmailInList(kAccountsPrefUsers, username);
1051 } 1063 }
1052 1064
1053 } // namespace chromeos 1065 } // namespace chromeos
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/profiles/profile_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698