• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef CHROME_BROWSER_PROFILES_PROFILES_STATE_H_
6 #define CHROME_BROWSER_PROFILES_PROFILES_STATE_H_
7 
8 #include "base/strings/string16.h"
9 
10 class Browser;
11 class PrefRegistrySimple;
12 class Profile;
13 namespace base { class FilePath; }
14 
15 namespace profiles {
16 
17 // Checks if multiple profiles is enabled.
18 bool IsMultipleProfilesEnabled();
19 
20 // Checks if new profile management is enabled.
21 bool IsNewProfileManagementEnabled();
22 
23 // Returns the path to the default profile directory, based on the given
24 // user data directory.
25 base::FilePath GetDefaultProfileDir(const base::FilePath& user_data_dir);
26 
27 // Returns the path to the preferences file given the user profile directory.
28 base::FilePath GetProfilePrefsPath(const base::FilePath& profile_dir);
29 
30 // Register multi-profile related preferences in Local State.
31 void RegisterPrefs(PrefRegistrySimple* registry);
32 
33 // Returns the display name of the active on-the-record profile (or guest).
34 base::string16 GetActiveProfileDisplayName(Browser* browser);
35 
36 // Update the name of |profile| to |new_profile_name|. This updates the
37 // profile preferences, which triggers an update in the ProfileInfoCache.
38 void UpdateProfileName(Profile* profile,
39                        const base::string16& new_profile_name);
40 
41 }  // namespace profiles
42 
43 #endif  // CHROME_BROWSER_PROFILES_PROFILES_STATE_H_
44