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
3 // found in the LICENSE file.
5 // A handful of resource-like constants related to the Chrome application.
7 #ifndef CHROME_COMMON_CHROME_CONSTANTS_H_
8 #define CHROME_COMMON_CHROME_CONSTANTS_H_
10 #include "base/files/file_path.h"
13 #if defined(GOOGLE_CHROME_BUILD)
14 #define PRODUCT_STRING_PATH L"Google\\Chrome"
15 #elif defined(CHROMIUM_BUILD)
16 #define PRODUCT_STRING_PATH L"Chromium"
18 #error Unknown branding
20 #endif // defined(OS_WIN)
24 extern const char kChromeVersion
[];
27 extern const char kChromeVersionEnvVar
[];
30 extern const base::FilePath::CharType kBrowserProcessExecutableName
[];
31 extern const base::FilePath::CharType kHelperProcessExecutableName
[];
32 extern const base::FilePath::CharType kBrowserProcessExecutablePath
[];
33 extern const base::FilePath::CharType kHelperProcessExecutablePath
[];
34 extern const base::FilePath::CharType kBrowserProcessExecutableNameChromium
[];
35 extern const base::FilePath::CharType kHelperProcessExecutableNameChromium
[];
36 extern const base::FilePath::CharType kBrowserProcessExecutablePathChromium
[];
37 extern const base::FilePath::CharType kHelperProcessExecutablePathChromium
[];
38 #if defined(OS_MACOSX)
39 // NOTE: if you change the value of kFrameworkName, please don't forget to
40 // update components/test/run_all_unittests.cc as well.
41 // TODO(tfarina): Remove the comment above, when you fix components to use plist
43 extern const base::FilePath::CharType kFrameworkName
[];
45 // The helper .app bundle name and executable name may have one of these
46 // suffixes to identify specific features, or it may have no suffix at all.
47 // This is a NULL-terminated array of strings. If kHelperFlavorSuffixes
48 // contains "EN", "MF", and NULL, it indicates that if the normal helper is
49 // named Chromium Helper.app, helper executables could show up at any of
50 // Chromium Helper.app/Contents/MacOS/Chromium Helper,
51 // Chromium Helper EN.app/Contents/MacOS/Chromium Helper EN, and
52 // Chromium Helper MF.app/Contents/MacOS/Chromium Helper MF.
53 extern const base::FilePath::CharType
* const kHelperFlavorSuffixes
[];
56 extern const base::FilePath::CharType kBrowserResourcesDll
[];
57 extern const base::FilePath::CharType kMetroDriverDll
[];
58 extern const base::FilePath::CharType kStatusTrayWindowClass
[];
59 #endif // defined(OS_WIN)
61 extern const char kInitialProfile
[];
62 extern const char kMultiProfileDirPrefix
[];
63 extern const base::FilePath::CharType kGuestProfileDir
[];
64 extern const base::FilePath::CharType kSystemProfileDir
[];
67 extern const base::FilePath::CharType kAffiliationDatabaseFileName
[];
68 extern const base::FilePath::CharType kCacheDirname
[];
69 extern const base::FilePath::CharType kChannelIDFilename
[];
70 extern const base::FilePath::CharType kCookieFilename
[];
71 extern const base::FilePath::CharType kCRLSetFilename
[];
72 extern const base::FilePath::CharType kCustomDictionaryFileName
[];
73 extern const base::FilePath::CharType kExtensionActivityLogFilename
[];
74 extern const base::FilePath::CharType kExtensionsCookieFilename
[];
75 extern const base::FilePath::CharType kFirstRunSentinel
[];
76 extern const base::FilePath::CharType kGCMStoreDirname
[];
77 extern const base::FilePath::CharType kLocalStateFilename
[];
78 extern const base::FilePath::CharType kLocalStorePoolName
[];
79 extern const base::FilePath::CharType kLoginDataFileName
[];
80 extern const base::FilePath::CharType kMediaCacheDirname
[];
81 extern const base::FilePath::CharType kNetworkPersistentStateFilename
[];
82 extern const base::FilePath::CharType kOfflinePageMetadataDirname
[];
83 extern const base::FilePath::CharType kPreferencesFilename
[];
84 extern const base::FilePath::CharType kProtectedPreferencesFilenameDeprecated
[];
85 extern const base::FilePath::CharType kReadmeFilename
[];
86 extern const base::FilePath::CharType kResetPromptMementoFilename
[];
87 extern const base::FilePath::CharType kSafeBrowsingBaseFilename
[];
88 extern const base::FilePath::CharType kSecurePreferencesFilename
[];
89 extern const base::FilePath::CharType kServiceStateFileName
[];
90 extern const base::FilePath::CharType kShortcutsDatabaseName
[];
91 extern const base::FilePath::CharType kSingletonCookieFilename
[];
92 extern const base::FilePath::CharType kSingletonLockFilename
[];
93 extern const base::FilePath::CharType kSingletonSocketFilename
[];
94 extern const base::FilePath::CharType kSupervisedUserSettingsFilename
[];
95 extern const base::FilePath::CharType kThemePackFilename
[];
96 extern const base::FilePath::CharType kWebAppDirname
[];
99 extern const base::FilePath::CharType kJumpListIconDirname
[];
102 // File name of the Pepper Flash plugin on different platforms.
103 extern const base::FilePath::CharType kPepperFlashPluginFilename
[];
107 extern const wchar_t kUserDataDirname
[];
110 // Fraction of the total number of processes to be used for hosting
111 // extensions. If we have more extensions than this percentage, we will start
112 // combining extensions in existing processes. This allows web pages to have
113 // enough render processes and not be starved when a lot of extensions are
115 extern const float kMaxShareOfExtensionProcesses
;
117 #if defined(OS_LINUX)
118 // The highest and lowest assigned OOM score adjustment
119 // (oom_score_adj) used by the OomPriority Manager.
120 extern const int kLowestRendererOomScore
;
121 extern const int kHighestRendererOomScore
;
125 // Used by Metro Chrome to initiate navigation and search requests.
126 extern const wchar_t kMetroNavigationAndSearchMessage
[];
127 // Used by Metro Chrome to get information about the current tab.
128 extern const wchar_t kMetroGetCurrentTabInfoMessage
[];
129 // Used by Metro Chrome to store activation state.
130 extern const wchar_t kMetroRegistryPath
[];
131 extern const wchar_t kLaunchModeValue
[];
132 // Used to store crash report metrics using
133 // content/browser_watcher/crash_reporting_metrics_win.h.
134 extern const wchar_t kBrowserCrashDumpAttemptsRegistryPath
[];
135 extern const wchar_t kBrowserCrashDumpAttemptsRegistryPathSxS
[];
136 // Registry location where the browser watcher stores browser exit codes.
137 // This is picked up and stored in histograms by the browser on the subsequent
139 extern const wchar_t kBrowserExitCodesRegistryPath
[];
142 #if defined(OS_CHROMEOS)
143 // Chrome OS profile directories have custom prefix.
144 // Profile path format: [user_data_dir]/u-[$hash]
145 // Ex.: /home/chronos/u-0123456789
146 extern const char kProfileDirPrefix
[];
148 // Legacy profile dir that was used when only one cryptohome has been mounted.
149 extern const char kLegacyProfileDir
[];
151 // This must be kept in sync with TestingProfile::kTestUserProfileDir.
152 extern const char kTestUserProfileDir
[];
155 // Used to identify the application to the system AV function in Windows.
156 extern const char kApplicationClientIDStringForAVScanning
[];
158 // The largest reasonable length we'd assume for a meta tag attribute.
159 extern const size_t kMaxMetaTagAttributeLength
;
161 } // namespace chrome
163 #endif // CHROME_COMMON_CHROME_CONSTANTS_H_