Index: chrome/browser/profiles/profile_manager.h |
diff --git a/chrome/browser/profiles/profile_manager.h b/chrome/browser/profiles/profile_manager.h |
index ee83d9d44b1489f080ea94c9e37a187875bc4f65..cae65ea22fc01e6e926f8ce88363eee86dec985b 100644 |
--- a/chrome/browser/profiles/profile_manager.h |
+++ b/chrome/browser/profiles/profile_manager.h |
@@ -45,31 +45,33 @@ class ProfileManager : public base::NonThreadSafe, |
// Physically remove deleted profile directories from disk. |
static void NukeDeletedProfilesFromDisk(); |
- // Only to be used in ChromeOS: |
- // This is a temporary solution to get rid of the DEPRICATED GetDefaultProfile |
- // functions below. Going forward we will do architectural changes to reduce |
- // the Profile to get the browser context instead and by moving it into ash, |
- // but for the short time fix we add these two functions here, enabling us to |
- // get rid of GetDefaultProfile as a first step. |
- // TODO(skuhne): Move into ash's new user management function. |
+ // Same as instance method but provides the default user_data_dir as well. |
+ // If the Profile is going to be used to open a new window then consider using |
+ // GetLastUsedProfileAllowedByPolicy() instead. |
+ static Profile* GetLastUsedProfile(); |
+ |
+ // Same as GetLastUsedProfile() but returns the incognito Profile if |
+ // incognito mode is forced. This should be used if the last used Profile |
+ // will be used to open new browser windows. |
+ static Profile* GetLastUsedProfileAllowedByPolicy(); |
+ |
+ // Same as instance method but provides the default user_data_dir as well. |
+ static std::vector<Profile*> GetLastOpenedProfiles(); |
// Get the profile for the user which created the current session. |
// Note that in case of a guest account this will return a 'suitable' profile. |
+ // This function is temporary and will soon be moved to ash. As such avoid |
+ // using it at all cost. |
+ // TODO(skuhne): Move into ash's new user management function. |
static Profile* GetPrimaryUserProfile(); |
// Get the profile for the currently active user. |
// Note that in case of a guest account this will return a 'suitable' profile. |
+ // This function is temporary and will soon be moved to ash. As such avoid |
+ // using it at all cost. |
+ // TODO(skuhne): Move into ash's new user management function. |
static Profile* GetActiveUserProfile(); |
- // DEPRECATED: DO NOT USE. Function will be removed soon (crbug.com/322682). |
- // Use GetPrimaryUserProfile or GetActiveUserProfile instead. |
- // Returns the default profile. This adds the profile to the |
- // ProfileManager if it doesn't already exist. This method returns NULL if |
- // the profile doesn't exist and we can't create it. |
- // The profile used can be overridden by using --login-profile on cros. |
- // Note that in case of a guest account this will return a 'suitable' profile. |
- static Profile* GetDefaultProfile(); |
- |
// Returns a profile for a specific profile directory within the user data |
// dir. This will return an existing profile it had already been created, |
// otherwise it will create and manage it. |
@@ -100,16 +102,6 @@ class ProfileManager : public base::NonThreadSafe, |
// stored in Local State, hand back the Default profile. |
Profile* GetLastUsedProfile(const base::FilePath& user_data_dir); |
- // Same as instance method but provides the default user_data_dir as well. |
- // If the Profile is going to be used to open a new window then consider using |
- // GetLastUsedProfileAllowedByPolicy() instead. |
- static Profile* GetLastUsedProfile(); |
- |
- // Same as GetLastUsedProfile() but returns the incognito Profile if |
- // incognito mode is forced. This should be used if the last used Profile |
- // will be used to open new browser windows. |
- static Profile* GetLastUsedProfileAllowedByPolicy(); |
- |
// Get the path of the last used profile, or if that's undefined, the default |
// profile. |
base::FilePath GetLastUsedProfileDir(const base::FilePath& user_data_dir); |
@@ -122,33 +114,15 @@ class ProfileManager : public base::NonThreadSafe, |
std::vector<Profile*> GetLastOpenedProfiles( |
const base::FilePath& user_data_dir); |
- // Same as instance method but provides the default user_data_dir as well. |
- static std::vector<Profile*> GetLastOpenedProfiles(); |
- |
// Returns created profiles. Note, profiles order is NOT guaranteed to be |
// related with the creation order. |
std::vector<Profile*> GetLoadedProfiles() const; |
- // content::NotificationObserver implementation. |
- virtual void Observe(int type, |
- const content::NotificationSource& source, |
- const content::NotificationDetails& details) OVERRIDE; |
- |
// If a profile with the given path is currently managed by this object, |
// return a pointer to the corresponding Profile object; |
// otherwise return NULL. |
Profile* GetProfileByPath(const base::FilePath& path) const; |
- // Profile::Delegate implementation: |
- virtual void OnProfileCreated(Profile* profile, |
- bool success, |
- bool is_new_profile) OVERRIDE; |
- |
- // Add or remove a profile launcher to/from the list of launchers waiting for |
- // new profiles to be created from the multi-profile menu. |
- void AddProfileLauncher(NewProfileLauncher* profile_launcher); |
- void RemoveProfileLauncher(NewProfileLauncher* profile_launcher); |
- |
// Creates a new profile in the next available multiprofile directory. |
// Directories are named "profile_1", "profile_2", etc., in sequence of |
// creation. (Because directories can be removed, however, it may be the case |
@@ -196,9 +170,6 @@ class ProfileManager : public base::NonThreadSafe, |
// Autoloads profiles if they are running background apps. |
void AutoloadProfiles(); |
- // Sign-Out a profile against use until re-authentication. |
- void SignOutProfile(Profile* profile); |
- |
// Initializes user prefs of |profile|. This includes profile name and |
// avatar values. |
void InitProfileUserPrefs(Profile* profile); |
@@ -217,6 +188,16 @@ class ProfileManager : public base::NonThreadSafe, |
// For ChromeOS, determines if the user has logged in to a real profile. |
bool IsLoggedIn() const { return logged_in_; } |
+ // content::NotificationObserver implementation. |
+ virtual void Observe(int type, |
+ const content::NotificationSource& source, |
+ const content::NotificationDetails& details) OVERRIDE; |
+ |
+ // Profile::Delegate implementation: |
+ virtual void OnProfileCreated(Profile* profile, |
+ bool success, |
+ bool is_new_profile) OVERRIDE; |
+ |
protected: |
// Does final initial actions. |
virtual void DoFinalInit(Profile* profile, bool go_off_the_record); |
@@ -284,14 +265,6 @@ class ProfileManager : public base::NonThreadSafe, |
// RegisterProfile. |
ProfileInfo* GetProfileInfoByPath(const base::FilePath& path) const; |
- typedef std::pair<base::FilePath, base::string16> ProfilePathAndName; |
- typedef std::vector<ProfilePathAndName> ProfilePathAndNames; |
- ProfilePathAndNames GetSortedProfilesFromDirectoryMap(); |
- |
- static bool CompareProfilePathAndName( |
- const ProfileManager::ProfilePathAndName& pair1, |
- const ProfileManager::ProfilePathAndName& pair2); |
- |
// Adds |profile| to the profile info cache if it hasn't been added yet. |
void AddProfileToCache(Profile* profile); |
@@ -305,8 +278,26 @@ class ProfileManager : public base::NonThreadSafe, |
Profile* profile, |
Profile::CreateStatus status); |
- // If the |loaded_profile| has been loaded succesfully (according to |status|) |
- // and isn't already scheduled for deletion, then finishes adding |
+#if !defined(OS_ANDROID) && !defined(OS_IOS) |
+ class BrowserListObserver : public chrome::BrowserListObserver { |
+ public: |
+ explicit BrowserListObserver(ProfileManager* manager); |
+ virtual ~BrowserListObserver(); |
+ |
+ // chrome::BrowserListObserver implementation. |
+ virtual void OnBrowserAdded(Browser* browser) OVERRIDE; |
+ virtual void OnBrowserRemoved(Browser* browser) OVERRIDE; |
+ virtual void OnBrowserSetLastActive(Browser* browser) OVERRIDE; |
+ |
+ private: |
+ ProfileManager* profile_manager_; |
+ DISALLOW_COPY_AND_ASSIGN(BrowserListObserver); |
+ }; |
+#endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
+ |
+#if defined(OS_MACOSX) |
+ // If the |loaded_profile| has been loaded successfully (according to |
+ // |status|) and isn't already scheduled for deletion, then finishes adding |
// |profile_to_delete_dir| to the queue of profiles to be deleted, and updates |
// the kProfileLastUsed preference based on |last_non_managed_profile_path|. |
void OnNewActiveProfileLoaded( |
@@ -315,6 +306,7 @@ class ProfileManager : public base::NonThreadSafe, |
const CreateCallback& original_callback, |
Profile* loaded_profile, |
Profile::CreateStatus status); |
+#endif |
content::NotificationRegistrar registrar_; |
@@ -326,6 +318,10 @@ class ProfileManager : public base::NonThreadSafe, |
// default. |
bool logged_in_; |
+#if !defined(OS_ANDROID) && !defined(OS_IOS) |
+ BrowserListObserver browser_list_observer_; |
+#endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
+ |
// Maps profile path to ProfileInfo (if profile has been created). Use |
// RegisterProfile() to add into this map. This map owns all loaded profile |
// objects in a running instance of Chrome. |
@@ -340,25 +336,6 @@ class ProfileManager : public base::NonThreadSafe, |
// Manages the process of creating, deleteing and updating Desktop shortcuts. |
scoped_ptr<ProfileShortcutManager> profile_shortcut_manager_; |
-#if !defined(OS_ANDROID) && !defined(OS_IOS) |
- class BrowserListObserver : public chrome::BrowserListObserver { |
- public: |
- explicit BrowserListObserver(ProfileManager* manager); |
- virtual ~BrowserListObserver(); |
- |
- // chrome::BrowserListObserver implementation. |
- virtual void OnBrowserAdded(Browser* browser) OVERRIDE; |
- virtual void OnBrowserRemoved(Browser* browser) OVERRIDE; |
- virtual void OnBrowserSetLastActive(Browser* browser) OVERRIDE; |
- |
- private: |
- ProfileManager* profile_manager_; |
- DISALLOW_COPY_AND_ASSIGN(BrowserListObserver); |
- }; |
- |
- BrowserListObserver browser_list_observer_; |
-#endif // !defined(OS_ANDROID) && !defined(OS_IOS) |
- |
// For keeping track of the last active profiles. |
std::map<Profile*, int> browser_counts_; |
// On startup we launch the active profiles in the order they became active |