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. 4 5// A handful of resource-like constants related to the Chrome application. 6 7#ifndef CHROME_COMMON_CHROME_CONSTANTS_H_ 8#define CHROME_COMMON_CHROME_CONSTANTS_H_ 9 10#include "base/files/file_path.h" 11 12namespace chrome { 13 14extern const char kChromeVersion[]; 15 16extern const char kChromeVersionEnvVar[]; 17 18extern const base::FilePath::CharType kBrowserProcessExecutableName[]; 19extern const base::FilePath::CharType kHelperProcessExecutableName[]; 20extern const base::FilePath::CharType kBrowserProcessExecutablePath[]; 21extern const base::FilePath::CharType kHelperProcessExecutablePath[]; 22extern const base::FilePath::CharType kBrowserProcessExecutableNameChromium[]; 23extern const base::FilePath::CharType kHelperProcessExecutableNameChromium[]; 24extern const base::FilePath::CharType kBrowserProcessExecutablePathChromium[]; 25extern const base::FilePath::CharType kHelperProcessExecutablePathChromium[]; 26#if defined(OS_MACOSX) 27extern const base::FilePath::CharType kFrameworkName[]; 28 29// The helper .app bundle name and executable name may have one of these 30// suffixes to identify specific features, or it may have no suffix at all. 31// This is a NULL-terminated array of strings. If kHelperFlavorSuffixes 32// contains "EN", "MF", and NULL, it indicates that if the normal helper is 33// named Chromium Helper.app, helper executables could show up at any of 34// Chromium Helper.app/Contents/MacOS/Chromium Helper, 35// Chromium Helper EN.app/Contents/MacOS/Chromium Helper EN, and 36// Chromium Helper MF.app/Contents/MacOS/Chromium Helper MF. 37extern const base::FilePath::CharType* const kHelperFlavorSuffixes[]; 38#endif // OS_MACOSX 39#if defined(OS_WIN) 40extern const base::FilePath::CharType kMetroDriverDll[]; 41extern const wchar_t kStatusTrayWindowClass[]; 42#endif // defined(OS_WIN) 43extern const wchar_t kCrashReportLog[]; 44extern const wchar_t kTestingInterfaceDLL[]; 45extern const char kInitialProfile[]; 46extern const char kMultiProfileDirPrefix[]; 47extern const base::FilePath::CharType kGuestProfileDir[]; 48extern const wchar_t kBrowserResourcesDll[]; 49 50// filenames 51#if defined(OS_ANDROID) 52extern const base::FilePath::CharType kAndroidCacheFilename[]; 53#endif 54extern const base::FilePath::CharType kArchivedHistoryFilename[]; 55extern const base::FilePath::CharType kBookmarksFileName[]; 56extern const base::FilePath::CharType kCacheDirname[]; 57extern const base::FilePath::CharType kCookieFilename[]; 58extern const base::FilePath::CharType kCRLSetFilename[]; 59extern const base::FilePath::CharType kCustomDictionaryFileName[]; 60extern const base::FilePath::CharType kExtensionActivityLogFilename[]; 61extern const base::FilePath::CharType kExtensionsCookieFilename[]; 62extern const base::FilePath::CharType kFaviconsFilename[]; 63extern const base::FilePath::CharType kFirstRunSentinel[]; 64extern const base::FilePath::CharType kHistoryFilename[]; 65extern const base::FilePath::CharType kJumpListIconDirname[]; 66extern const base::FilePath::CharType kLocalStateFilename[]; 67extern const base::FilePath::CharType kLocalStorePoolName[]; 68extern const base::FilePath::CharType kLoginDataFileName[]; 69extern const base::FilePath::CharType kManagedUserSettingsFilename[]; 70extern const base::FilePath::CharType kMediaCacheDirname[]; 71extern const base::FilePath::CharType kNewTabThumbnailsFilename[]; 72extern const base::FilePath::CharType kOBCertFilename[]; 73extern const base::FilePath::CharType kPreferencesFilename[]; 74extern const base::FilePath::CharType kReadmeFilename[]; 75extern const base::FilePath::CharType kResetPromptMementoFilename[]; 76extern const base::FilePath::CharType kSafeBrowsingBaseFilename[]; 77extern const base::FilePath::CharType kServiceStateFileName[]; 78extern const base::FilePath::CharType kShortcutsDatabaseName[]; 79extern const base::FilePath::CharType kSingletonCookieFilename[]; 80extern const base::FilePath::CharType kSingletonLockFilename[]; 81extern const base::FilePath::CharType kSingletonSocketFilename[]; 82extern const base::FilePath::CharType kSyncCredentialsFilename[]; 83extern const base::FilePath::CharType kThemePackFilename[]; 84extern const base::FilePath::CharType kThumbnailsFilename[]; 85extern const base::FilePath::CharType kTopSitesFilename[]; 86extern const base::FilePath::CharType kWebAppDirname[]; 87 88// File name of the Pepper Flash plugin on different platforms. 89extern const base::FilePath::CharType kPepperFlashPluginFilename[]; 90 91// directory names 92extern const wchar_t kUserDataDirname[]; 93 94extern const bool kRecordModeEnabled; 95 96// If a WebContents is impolite and displays a second JavaScript alert within 97// kJavaScriptMessageExpectedDelay of a previous JavaScript alert being 98// dismissed, display an option to suppress future alerts from this WebContents. 99extern const int kJavaScriptMessageExpectedDelay; 100 101// Are touch icons enabled? False by default. 102extern const bool kEnableTouchIcon; 103 104// Fraction of the total number of processes to be used for hosting 105// extensions. If we have more extensions than this percentage, we will start 106// combining extensions in existing processes. This allows web pages to have 107// enough render processes and not be starved when a lot of extensions are 108// installed. 109extern const float kMaxShareOfExtensionProcesses; 110 111// This is used by the PreRead experiment. 112extern const char kPreReadEnvironmentVariable[]; 113 114#if defined(OS_LINUX) 115// The highest and lowest assigned OOM score adjustment 116// (oom_score_adj) used by the OomPriority Manager. 117extern const int kLowestRendererOomScore; 118extern const int kHighestRendererOomScore; 119#endif 120 121#if defined(OS_WIN) 122// Used by Metro Chrome to create the profile under a custom subdirectory. 123extern const wchar_t kMetroChromeUserDataSubDir[]; 124// Used by Metro Chrome to initiate navigation and search requests. 125extern const wchar_t kMetroNavigationAndSearchMessage[]; 126// Used by Metro Chrome to get information about the current tab. 127extern const wchar_t kMetroGetCurrentTabInfoMessage[]; 128// Used by Metro Chrome to store activation state. 129extern const wchar_t kMetroRegistryPath[]; 130extern const wchar_t kLaunchModeValue[]; 131// Used by the browser as a container in which to track unreported crash dump 132// attempts. The actual values (each representing one crash dump attempt) are 133// stored in a subkey named with the version number of the build. Each value 134// under the subkey represents an additional attempt. 135extern const wchar_t kBrowserCrashDumpAttemptsRegistryPath[]; 136// Used by chrome.exe to signal that chrome.dll was started via a key sequence 137// that requires it to start in safe mode. For example, in software rendering. 138extern const char kSafeModeEnvVar[]; 139#endif 140 141#if defined(OS_CHROMEOS) 142// Chrome OS profile directories have custom prefix. 143// Profile path format: [user_data_dir]/u-[$hash] 144// Ex.: /home/chronos/u-0123456789 145extern const char kProfileDirPrefix[]; 146 147// Legacy profile dir that was used when only one cryptohome has been mounted. 148extern const char kLegacyProfileDir[]; 149 150// This must be kept in sync with TestingProfile::kTestUserProfileDir. 151extern const char kTestUserProfileDir[]; 152#endif 153 154// Used to identify the application to the system AV function in Windows. 155extern const char kApplicationClientIDStringForAVScanning[]; 156 157} // namespace chrome 158 159#endif // CHROME_COMMON_CHROME_CONSTANTS_H_ 160