chrome_constants.h revision 90dce4d38c5ff5333bea97d859d4e484e27edf0c
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 kMessageWindowClass[];
44extern const wchar_t kCrashReportLog[];
45extern const wchar_t kTestingInterfaceDLL[];
46extern const char    kInitialProfile[];
47extern const char    kMultiProfileDirPrefix[];
48extern const wchar_t kBrowserResourcesDll[];
49extern const wchar_t kNaClAppName[];
50extern const base::FilePath::CharType kExtensionFileExtension[];
51extern const base::FilePath::CharType kExtensionKeyFileExtension[];
52
53// filenames
54#if defined(OS_ANDROID)
55extern const base::FilePath::CharType kAndroidCacheFilename[];
56#endif
57extern const base::FilePath::CharType kArchivedHistoryFilename[];
58extern const base::FilePath::CharType kBookmarksFileName[];
59extern const base::FilePath::CharType kCacheDirname[];
60extern const base::FilePath::CharType kCookieFilename[];
61extern const base::FilePath::CharType kCRLSetFilename[];
62extern const base::FilePath::CharType kCustomDictionaryFileName[];
63extern const base::FilePath::CharType kExtensionActivityLogFilename[];
64extern const base::FilePath::CharType kExtensionsCookieFilename[];
65extern const base::FilePath::CharType kFaviconsFilename[];
66extern const base::FilePath::CharType kFirstRunSentinel[];
67extern const base::FilePath::CharType kHistoryFilename[];
68extern const base::FilePath::CharType kJumpListIconDirname[];
69extern const base::FilePath::CharType kLocalStateFilename[];
70extern const base::FilePath::CharType kLocalStorePoolName[];
71extern const base::FilePath::CharType kLoginDataFileName[];
72extern const base::FilePath::CharType kManagedModePolicyFilename[];
73extern const base::FilePath::CharType kMediaCacheDirname[];
74extern const base::FilePath::CharType kNewTabThumbnailsFilename[];
75extern const base::FilePath::CharType kOBCertFilename[];
76extern const base::FilePath::CharType kPreferencesFilename[];
77extern const base::FilePath::CharType kReadmeFilename[];
78extern const base::FilePath::CharType kSafeBrowsingBaseFilename[];
79extern const base::FilePath::CharType kServiceStateFileName[];
80extern const base::FilePath::CharType kShortcutsDatabaseName[];
81extern const base::FilePath::CharType kSingletonCookieFilename[];
82extern const base::FilePath::CharType kSingletonLockFilename[];
83extern const base::FilePath::CharType kSingletonSocketFilename[];
84extern const base::FilePath::CharType kSyncCredentialsFilename[];
85extern const base::FilePath::CharType kThemePackFilename[];
86extern const base::FilePath::CharType kThumbnailsFilename[];
87extern const base::FilePath::CharType kTopSitesFilename[];
88extern const base::FilePath::CharType kWebAppDirname[];
89
90// File name of the Pepper Flash plugin on different platforms.
91extern const base::FilePath::CharType kPepperFlashPluginFilename[];
92
93// directory names
94extern const wchar_t kUserDataDirname[];
95
96extern const bool kRecordModeEnabled;
97
98// The language code used when the language of a page could not be detected.
99// (Matches what the CLD -Compact Language Detection- library reports.)
100extern const char* const kUnknownLanguageCode;
101
102// If another javascript message box is displayed within
103// kJavascriptMessageExpectedDelay of a previous javascript message box being
104// dismissed, display an option to suppress future message boxes from this
105// contents.
106extern const int kJavascriptMessageExpectedDelay;
107
108// Are touch icons enabled? False by default.
109extern const bool kEnableTouchIcon;
110
111// Fraction of the total number of processes to be used for hosting
112// extensions. If we have more extensions than this percentage, we will start
113// combining extensions in existing processes. This allows web pages to have
114// enough render processes and not be starved when a lot of extensions are
115// installed.
116extern const float kMaxShareOfExtensionProcesses;
117
118#if defined(OS_LINUX)
119// The highest and lowest assigned OOM score adjustment
120// (oom_score_adj) used by the OomPriority Manager.
121extern const int kLowestRendererOomScore;
122extern const int kHighestRendererOomScore;
123#endif
124
125#if defined(OS_WIN)
126// This is used by the PreRead experiment.
127extern const char kPreReadEnvironmentVariable[];
128// Used by Metro Chrome to create the profile under a custom subdirectory.
129extern const wchar_t kMetroChromeUserDataSubDir[];
130// Used by Metro Chrome to initiate navigation and search requests.
131extern const wchar_t kMetroNavigationAndSearchMessage[];
132// Used by Metro Chrome to get information about the current tab.
133extern const wchar_t kMetroGetCurrentTabInfoMessage[];
134// Used by Metro Chrome to store activation state.
135extern const wchar_t kMetroRegistryPath[];
136extern const wchar_t kLaunchModeValue[];
137#endif
138
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
143extern const char kProfileDirPrefix[];
144#endif
145
146}  // namespace chrome
147
148#endif  // CHROME_COMMON_CHROME_CONSTANTS_H_
149