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

Side by Side Diff: chrome/browser/profiles/profile_manager.cc

Issue 23868042: Mark supervised profiles as such immediately when they're created. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review Created 7 years, 2 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) 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/profiles/profile_manager.h" 5 #include "chrome/browser/profiles/profile_manager.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 // Make sure that we're not loading a profile with the same ID as a profile 545 // Make sure that we're not loading a profile with the same ID as a profile
546 // that's already loaded. 546 // that's already loaded.
547 if (GetProfileByPath(profile->GetPath())) { 547 if (GetProfileByPath(profile->GetPath())) {
548 NOTREACHED() << "Attempted to add profile with the same path (" << 548 NOTREACHED() << "Attempted to add profile with the same path (" <<
549 profile->GetPath().value() << 549 profile->GetPath().value() <<
550 ") as an already-loaded profile."; 550 ") as an already-loaded profile.";
551 return false; 551 return false;
552 } 552 }
553 553
554 RegisterProfile(profile, true); 554 RegisterProfile(profile, true);
555 InitProfileUserPrefs(profile);
555 DoFinalInit(profile, ShouldGoOffTheRecord(profile)); 556 DoFinalInit(profile, ShouldGoOffTheRecord(profile));
556 return true; 557 return true;
557 } 558 }
558 559
559 ProfileManager::ProfileInfo* ProfileManager::RegisterProfile( 560 ProfileManager::ProfileInfo* ProfileManager::RegisterProfile(
560 Profile* profile, 561 Profile* profile,
561 bool created) { 562 bool created) {
562 ProfileInfo* info = new ProfileInfo(profile, created); 563 ProfileInfo* info = new ProfileInfo(profile, created);
563 profiles_info_.insert( 564 profiles_info_.insert(
564 std::make_pair(profile->GetPath(), linked_ptr<ProfileInfo>(info))); 565 std::make_pair(profile->GetPath(), linked_ptr<ProfileInfo>(info)));
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
724 // Only keep track of profiles that we are managing; tests may create others. 725 // Only keep track of profiles that we are managing; tests may create others.
725 if (profile_manager_->profiles_info_.find( 726 if (profile_manager_->profiles_info_.find(
726 last_active->GetPath()) != profile_manager_->profiles_info_.end()) { 727 last_active->GetPath()) != profile_manager_->profiles_info_.end()) {
727 local_state->SetString(prefs::kProfileLastUsed, 728 local_state->SetString(prefs::kProfileLastUsed,
728 last_active->GetPath().BaseName().MaybeAsASCII()); 729 last_active->GetPath().BaseName().MaybeAsASCII());
729 } 730 }
730 } 731 }
731 #endif // !defined(OS_ANDROID) && !defined(OS_IOS) 732 #endif // !defined(OS_ANDROID) && !defined(OS_IOS)
732 733
733 void ProfileManager::DoFinalInit(Profile* profile, bool go_off_the_record) { 734 void ProfileManager::DoFinalInit(Profile* profile, bool go_off_the_record) {
734 InitProfileUserPrefs(profile);
735 DoFinalInitForServices(profile, go_off_the_record); 735 DoFinalInitForServices(profile, go_off_the_record);
736 AddProfileToCache(profile); 736 AddProfileToCache(profile);
737 DoFinalInitLogging(profile); 737 DoFinalInitLogging(profile);
738 738
739 ProfileMetrics::LogNumberOfProfiles(this); 739 ProfileMetrics::LogNumberOfProfiles(this);
740 content::NotificationService::current()->Notify( 740 content::NotificationService::current()->Notify(
741 chrome::NOTIFICATION_PROFILE_ADDED, 741 chrome::NOTIFICATION_PROFILE_ADDED,
742 content::Source<Profile>(profile), 742 content::Source<Profile>(profile),
743 content::NotificationService::NoDetails()); 743 content::NotificationService::NoDetails());
744 } 744 }
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after
1006 profile_name = UTF16ToUTF8(cache.ChooseNameForNewProfile(avatar_index)); 1006 profile_name = UTF16ToUTF8(cache.ChooseNameForNewProfile(avatar_index));
1007 } 1007 }
1008 } 1008 }
1009 1009
1010 if (!profile->GetPrefs()->HasPrefPath(prefs::kProfileAvatarIndex)) 1010 if (!profile->GetPrefs()->HasPrefPath(prefs::kProfileAvatarIndex))
1011 profile->GetPrefs()->SetInteger(prefs::kProfileAvatarIndex, avatar_index); 1011 profile->GetPrefs()->SetInteger(prefs::kProfileAvatarIndex, avatar_index);
1012 1012
1013 if (!profile->GetPrefs()->HasPrefPath(prefs::kProfileName)) 1013 if (!profile->GetPrefs()->HasPrefPath(prefs::kProfileName))
1014 profile->GetPrefs()->SetString(prefs::kProfileName, profile_name); 1014 profile->GetPrefs()->SetString(prefs::kProfileName, profile_name);
1015 1015
1016 if (!profile->GetPrefs()->HasPrefPath(prefs::kManagedUserId)) 1016 if (!profile->GetPrefs()->HasPrefPath(prefs::kManagedUserId)) {
1017 if (managed_user_id.empty() &&
1018 CommandLine::ForCurrentProcess()->HasSwitch(
1019 switches::kNewProfileIsSupervised)) {
1020 managed_user_id = "Test ID";
1021 }
1017 profile->GetPrefs()->SetString(prefs::kManagedUserId, managed_user_id); 1022 profile->GetPrefs()->SetString(prefs::kManagedUserId, managed_user_id);
1023 }
1018 } 1024 }
1019 1025
1020 void ProfileManager::SetGuestProfilePrefs(Profile* profile) { 1026 void ProfileManager::SetGuestProfilePrefs(Profile* profile) {
1021 IncognitoModePrefs::SetAvailability(profile->GetPrefs(), 1027 IncognitoModePrefs::SetAvailability(profile->GetPrefs(),
1022 IncognitoModePrefs::FORCED); 1028 IncognitoModePrefs::FORCED);
1023 profile->GetPrefs()->SetBoolean(prefs::kShowBookmarkBar, false); 1029 profile->GetPrefs()->SetBoolean(prefs::kShowBookmarkBar, false);
1024 } 1030 }
1025 1031
1026 bool ProfileManager::ShouldGoOffTheRecord(Profile* profile) { 1032 bool ProfileManager::ShouldGoOffTheRecord(Profile* profile) {
1027 bool go_off_the_record = false; 1033 bool go_off_the_record = false;
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
1194 ProfileManager::ProfileInfo::ProfileInfo( 1200 ProfileManager::ProfileInfo::ProfileInfo(
1195 Profile* profile, 1201 Profile* profile,
1196 bool created) 1202 bool created)
1197 : profile(profile), 1203 : profile(profile),
1198 created(created) { 1204 created(created) {
1199 } 1205 }
1200 1206
1201 ProfileManager::ProfileInfo::~ProfileInfo() { 1207 ProfileManager::ProfileInfo::~ProfileInfo() {
1202 ProfileDestroyer::DestroyProfileWhenAppropriate(profile.release()); 1208 ProfileDestroyer::DestroyProfileWhenAppropriate(profile.release());
1203 } 1209 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698