Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / chrome / common / chrome_constants.h
blobd83a042f680e2a703099f41904c6dd7056fc040b
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"
12 #if defined(OS_WIN)
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"
17 #else
18 #error Unknown branding
19 #endif
20 #endif // defined(OS_WIN)
22 namespace chrome {
24 extern const char kChromeVersion[];
26 #if defined(OS_WIN)
27 extern const char kChromeVersionEnvVar[];
28 #endif
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
42 // on Mac.
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[];
54 #endif // OS_MACOSX
55 #if defined(OS_WIN)
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[];
66 // filenames
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[];
98 #if defined(OS_WIN)
99 extern const base::FilePath::CharType kJumpListIconDirname[];
100 #endif
102 // File name of the Pepper Flash plugin on different platforms.
103 extern const base::FilePath::CharType kPepperFlashPluginFilename[];
105 // directory names
106 #if defined(OS_WIN)
107 extern const wchar_t kUserDataDirname[];
108 #endif
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
114 // installed.
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;
122 #endif
124 #if defined(OS_WIN)
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
138 // launch.
139 extern const wchar_t kBrowserExitCodesRegistryPath[];
140 #endif
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[];
153 #endif
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_