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

Side by Side Diff: chrome/browser/user_data_manager.h

Issue 660038: Fix issue 32106 (Closed)
Patch Set: Created 10 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
« no previous file with comments | « app/win_util.cc ('k') | chrome/browser/user_data_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) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 // This class encapsulates the implementation of multiple profiles by using 5 // This class encapsulates the implementation of multiple profiles by using
6 // the user-data-dir functionality. 6 // the user-data-dir functionality.
7 7
8 #ifndef CHROME_BROWSER_USER_DATA_MANAGER_H_ 8 #ifndef CHROME_BROWSER_USER_DATA_MANAGER_H_
9 #define CHROME_BROWSER_USER_DATA_MANAGER_H_ 9 #define CHROME_BROWSER_USER_DATA_MANAGER_H_
10 10
11 #include <string> 11 #include <string>
12 #include <vector> 12 #include <vector>
13 13
14 #include "base/basictypes.h" 14 #include "base/basictypes.h"
15 #include "base/ref_counted.h" 15 #include "base/ref_counted.h"
16 16
17 class FilePath;
17 class MessageLoop; 18 class MessageLoop;
18 19
19 // Provides an abstraction of profiles on top of the user data directory 20 // Provides an abstraction of profiles on top of the user data directory
20 // feature. Given the root of the user data directories, it provides 21 // feature. Given the root of the user data directories, it provides
21 // functionality to enumerate the existing profiles and start Chrome in a 22 // functionality to enumerate the existing profiles and start Chrome in a
22 // given profile. 23 // given profile.
23 // Also holds a shared instance of its own for convenience though it's not a 24 // Also holds a shared instance of its own for convenience though it's not a
24 // singleton class. The shared instance should be created by the main thread, 25 // singleton class. The shared instance should be created by the main thread,
25 // then other threads can access and use the shared instance. 26 // then other threads can access and use the shared instance.
26 class UserDataManager { 27 class UserDataManager {
(...skipping 17 matching lines...) Expand all
44 45
45 // Returns whether the current profile is the default profile or not. 46 // Returns whether the current profile is the default profile or not.
46 bool is_current_profile_default() const { 47 bool is_current_profile_default() const {
47 return is_current_profile_default_; 48 return is_current_profile_default_;
48 } 49 }
49 50
50 // Populates the given vector with a list of all the profiles. 51 // Populates the given vector with a list of all the profiles.
51 // This function should be called on the file thread. 52 // This function should be called on the file thread.
52 void GetProfiles(std::vector<std::wstring>* profiles) const; 53 void GetProfiles(std::vector<std::wstring>* profiles) const;
53 54
55 // Creates a shortcut for the given profile name in |folder|.
56 // Returns false if the shortcut creation fails; true otherwise.
57 bool CreateShortcutForProfileInFolder(const FilePath& folder,
58 const std::wstring& profile_name) const;
59
54 // Creates a desktop shortcut for the given profile name. 60 // Creates a desktop shortcut for the given profile name.
55 // Returns false if the shortcut creation fails; true otherwise. 61 // Returns false if the shortcut creation fails; true otherwise.
56 bool CreateDesktopShortcutForProfile(const std::wstring& profile_name) const; 62 bool CreateDesktopShortcutForProfile(const std::wstring& profile_name) const;
57 63
58 // Starts a new Chrome instance in the given profile name. 64 // Starts a new Chrome instance in the given profile name.
59 void LaunchChromeForProfile(const std::wstring& profile_name) const; 65 void LaunchChromeForProfile(const std::wstring& profile_name) const;
60 66
61 // Starts a new Chrome instance in the profile with the given index. The 67 // Starts a new Chrome instance in the profile with the given index. The
62 // index is zero based, and refers to the position of the profile in the 68 // index is zero based, and refers to the position of the profile in the
63 // list of profile names in alphabetical order. 69 // list of profile names in alphabetical order.
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 150
145 // Delegate to call. 151 // Delegate to call.
146 Delegate* delegate_; 152 Delegate* delegate_;
147 // Message loop to post tasks on completion of loading profiles. 153 // Message loop to post tasks on completion of loading profiles.
148 MessageLoop* message_loop_; 154 MessageLoop* message_loop_;
149 155
150 DISALLOW_COPY_AND_ASSIGN(GetProfilesHelper); 156 DISALLOW_COPY_AND_ASSIGN(GetProfilesHelper);
151 }; 157 };
152 158
153 #endif // CHROME_BROWSER_USER_DATA_MANAGER_H_ 159 #endif // CHROME_BROWSER_USER_DATA_MANAGER_H_
OLDNEW
« no previous file with comments | « app/win_util.cc ('k') | chrome/browser/user_data_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698