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
[];
26 extern const char kChromeVersionEnvVar
[];
28 extern const base::FilePath::CharType kBrowserProcessExecutableName
[];
29 extern const base::FilePath::CharType kHelperProcessExecutableName
[];
30 extern const base::FilePath::CharType kBrowserProcessExecutablePath
[];
31 extern const base::FilePath::CharType kHelperProcessExecutablePath
[];
32 extern const base::FilePath::CharType kBrowserProcessExecutableNameChromium
[];
33 extern const base::FilePath::CharType kHelperProcessExecutableNameChromium
[];
34 extern const base::FilePath::CharType kBrowserProcessExecutablePathChromium
[];
35 extern const base::FilePath::CharType kHelperProcessExecutablePathChromium
[];
36 #if defined(OS_MACOSX)
37 // NOTE: if you change the value of kFrameworkName, please don't forget to
38 // update components/test/run_all_unittests.cc as well.
39 // TODO(tfarina): Remove the comment above, when you fix components to use plist
41 extern const base::FilePath::CharType kFrameworkName
[];
43 // The helper .app bundle name and executable name may have one of these
44 // suffixes to identify specific features, or it may have no suffix at all.
45 // This is a NULL-terminated array of strings. If kHelperFlavorSuffixes
46 // contains "EN", "MF", and NULL, it indicates that if the normal helper is
47 // named Chromium Helper.app, helper executables could show up at any of
48 // Chromium Helper.app/Contents/MacOS/Chromium Helper,
49 // Chromium Helper EN.app/Contents/MacOS/Chromium Helper EN, and
50 // Chromium Helper MF.app/Contents/MacOS/Chromium Helper MF.
51 extern const base::FilePath::CharType
* const kHelperFlavorSuffixes
[];
54 extern const base::FilePath::CharType kMetroDriverDll
[];
55 extern const wchar_t kStatusTrayWindowClass
[];
56 #endif // defined(OS_WIN)
57 extern const wchar_t kCrashReportLog
[];
58 extern const wchar_t kTestingInterfaceDLL
[];
59 extern const char kInitialProfile
[];
60 extern const char kMultiProfileDirPrefix
[];
61 extern const base::FilePath::CharType kGuestProfileDir
[];
62 extern const base::FilePath::CharType kSystemProfileDir
[];
63 extern const wchar_t kBrowserResourcesDll
[];
66 extern const base::FilePath::CharType kAffiliationDatabaseFileName
[];
67 extern const base::FilePath::CharType kCacheDirname
[];
68 extern const base::FilePath::CharType kChannelIDFilename
[];
69 extern const base::FilePath::CharType kCookieFilename
[];
70 extern const base::FilePath::CharType kCRLSetFilename
[];
71 extern const base::FilePath::CharType kCustomDictionaryFileName
[];
72 extern const base::FilePath::CharType kExtensionActivityLogFilename
[];
73 extern const base::FilePath::CharType kExtensionsCookieFilename
[];
74 extern const base::FilePath::CharType kFirstRunSentinel
[];
75 extern const base::FilePath::CharType kGCMStoreDirname
[];
76 extern const base::FilePath::CharType kJumpListIconDirname
[];
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 kNewTabThumbnailsFilename
[];
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 kSyncCredentialsFilename
[];
96 extern const base::FilePath::CharType kThemePackFilename
[];
97 extern const base::FilePath::CharType kThumbnailsFilename
[];
98 extern const base::FilePath::CharType kTopSitesFilename
[];
99 extern const base::FilePath::CharType kWebAppDirname
[];
101 // File name of the Pepper Flash plugin on different platforms.
102 extern const base::FilePath::CharType kPepperFlashPluginFilename
[];
105 extern const wchar_t kUserDataDirname
[];
107 // Fraction of the total number of processes to be used for hosting
108 // extensions. If we have more extensions than this percentage, we will start
109 // combining extensions in existing processes. This allows web pages to have
110 // enough render processes and not be starved when a lot of extensions are
112 extern const float kMaxShareOfExtensionProcesses
;
114 #if defined(OS_LINUX)
115 // The highest and lowest assigned OOM score adjustment
116 // (oom_score_adj) used by the OomPriority Manager.
117 extern const int kLowestRendererOomScore
;
118 extern const int kHighestRendererOomScore
;
122 // Used by Metro Chrome to initiate navigation and search requests.
123 extern const wchar_t kMetroNavigationAndSearchMessage
[];
124 // Used by Metro Chrome to get information about the current tab.
125 extern const wchar_t kMetroGetCurrentTabInfoMessage
[];
126 // Used by Metro Chrome to store activation state.
127 extern const wchar_t kMetroRegistryPath
[];
128 extern const wchar_t kLaunchModeValue
[];
129 // Used to store crash report metrics using
130 // content/browser_watcher/crash_reporting_metrics_win.h.
131 extern const wchar_t kBrowserCrashDumpAttemptsRegistryPath
[];
132 extern const wchar_t kBrowserCrashDumpAttemptsRegistryPathSxS
[];
133 // Registry location where the browser watcher stores browser exit codes.
134 // This is picked up and stored in histograms by the browser on the subsequent
136 extern const wchar_t kBrowserExitCodesRegistryPath
[];
139 #if defined(OS_CHROMEOS)
140 // Chrome OS profile directories have custom prefix.
141 // Profile path format: [user_data_dir]/u-[$hash]
142 // Ex.: /home/chronos/u-0123456789
143 extern const char kProfileDirPrefix
[];
145 // Legacy profile dir that was used when only one cryptohome has been mounted.
146 extern const char kLegacyProfileDir
[];
148 // This must be kept in sync with TestingProfile::kTestUserProfileDir.
149 extern const char kTestUserProfileDir
[];
152 // Used to identify the application to the system AV function in Windows.
153 extern const char kApplicationClientIDStringForAVScanning
[];
155 // The largest reasonable length we'd assume for a meta tag attribute.
156 extern const size_t kMaxMetaTagAttributeLength
;
158 } // namespace chrome
160 #endif // CHROME_COMMON_CHROME_CONSTANTS_H_