Supervised user import: Listen for profile creation/deletion
[chromium-blink-merge.git] / chrome / common / extensions / extension_constants.h
blob46226be401e5cc12a9c1a05414c0283aacb389f6
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 #ifndef CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_
6 #define CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_
8 #include <string>
10 #include "base/basictypes.h"
11 #include "url/gurl.h"
13 namespace extension_urls {
15 // This returns the compile-time constant webstore update url specific to
16 // Chrome. Usually you should prefer using GetWebstoreUpdateUrl.
17 GURL GetDefaultWebstoreUpdateUrl();
19 // Field to use with webstore URL for tracking launch source.
20 extern const char kWebstoreSourceField[];
22 // Values to use with webstore URL launch source field.
23 extern const char kLaunchSourceAppList[];
24 extern const char kLaunchSourceAppListSearch[];
25 extern const char kLaunchSourceAppListInfoDialog[];
27 } // namespace extension_urls
29 namespace extension_misc {
31 // The extension id of the bookmark manager.
32 extern const char kBookmarkManagerId[];
34 // The extension id of the Chrome component application.
35 extern const char kChromeAppId[];
37 // The extension id of the Cloud Print component application.
38 extern const char kCloudPrintAppId[];
40 // The extension id of the Data Saver extension.
41 extern const char kDataSaverExtensionId[];
43 // The extension id of the Easy Unlock component application.
44 extern const char kEasyUnlockAppId[];
46 // The extension id of the Enterprise Web Store component application.
47 extern const char kEnterpriseWebStoreAppId[];
49 // The extension id of GMail application.
50 extern const char kGmailAppId[];
52 // The extension id of the Google Doc application.
53 extern const char kGoogleDocAppId[];
55 // The extension id of the Google Play Music application.
56 extern const char kGooglePlayMusicAppId[];
58 // The extension id of the Google Search application.
59 extern const char kGoogleSearchAppId[];
61 // The extension id of the Google Sheets application.
62 extern const char kGoogleSheetsAppId[];
64 // The extension id of the Google Slides application.
65 extern const char kGoogleSlidesAppId[];
67 // The extension id of the HTerm app for ChromeOS.
68 extern const char kHTermAppId[];
70 // The extension id of the HTerm dev app for ChromeOS.
71 extern const char kHTermDevAppId[];
73 // The extension id of the Identity API UI application.
74 extern const char kIdentityApiUiAppId[];
76 // The extension id of the Crosh component app for ChromeOS.
77 extern const char kCroshBuiltinAppId[];
79 // The extension id of the hotword audio verification dialogue app.
80 extern const char kHotwordAudioVerificationAppId[];
82 // The extension id of the new (experimental) hotword extension.
83 extern const char kHotwordNewExtensionId[];
85 // The extension id of the hotword shared module.
86 extern const char kHotwordSharedModuleId[];
88 // The extension id of the settings application.
89 extern const char kSettingsAppId[];
91 // The extension id of the Youtube application.
92 extern const char kYoutubeAppId[];
94 // The extension id of the in-app payments support application.
95 extern const char kInAppPaymentsSupportAppId[];
97 #if defined(ENABLE_MEDIA_ROUTER)
98 // The extension id of the stable media router extension.
99 extern const char kMediaRouterStableExtensionId[];
100 #endif // defined(ENABLE_MEDIA_ROUTER)
102 // The buckets used for app launches.
103 enum AppLaunchBucket {
104 // Launch from NTP apps section while maximized.
105 APP_LAUNCH_NTP_APPS_MAXIMIZED,
107 // Launch from NTP apps section while collapsed.
108 APP_LAUNCH_NTP_APPS_COLLAPSED,
110 // Launch from NTP apps section while in menu mode.
111 APP_LAUNCH_NTP_APPS_MENU,
113 // Launch from NTP most visited section in any mode.
114 APP_LAUNCH_NTP_MOST_VISITED,
116 // Launch from NTP recently closed section in any mode.
117 APP_LAUNCH_NTP_RECENTLY_CLOSED,
119 // App link clicked from bookmark bar.
120 APP_LAUNCH_BOOKMARK_BAR,
122 // Nvigated to an app from within a web page (like by clicking a link).
123 APP_LAUNCH_CONTENT_NAVIGATION,
125 // Launch from session restore.
126 APP_LAUNCH_SESSION_RESTORE,
128 // Autolaunched at startup, like for pinned tabs.
129 APP_LAUNCH_AUTOLAUNCH,
131 // Launched from omnibox app links.
132 APP_LAUNCH_OMNIBOX_APP,
134 // App URL typed directly into the omnibox (w/ instant turned off).
135 APP_LAUNCH_OMNIBOX_LOCATION,
137 // Navigate to an app URL via instant.
138 APP_LAUNCH_OMNIBOX_INSTANT,
140 // Launch via chrome.management.launchApp.
141 APP_LAUNCH_EXTENSION_API,
143 // Launch an app via a shortcut. This includes using the --app or --app-id
144 // command line arguments, or via an app shim process on Mac.
145 APP_LAUNCH_CMD_LINE_APP,
147 // App launch by passing the URL on the cmd line (not using app switches).
148 APP_LAUNCH_CMD_LINE_URL,
150 // User clicked web store launcher on NTP.
151 APP_LAUNCH_NTP_WEBSTORE,
153 // App launched after the user re-enabled it on the NTP.
154 APP_LAUNCH_NTP_APP_RE_ENABLE,
156 // URL launched using the --app cmd line option, but the URL does not
157 // correspond to an installed app. These launches are left over from a
158 // feature that let you make desktop shortcuts from the file menu.
159 APP_LAUNCH_CMD_LINE_APP_LEGACY,
161 // User clicked web store link on the NTP footer.
162 APP_LAUNCH_NTP_WEBSTORE_FOOTER,
164 // User clicked [+] icon in apps page.
165 APP_LAUNCH_NTP_WEBSTORE_PLUS_ICON,
167 // User clicked icon in app launcher main view.
168 APP_LAUNCH_APP_LIST_MAIN,
170 // User clicked app launcher search result.
171 APP_LAUNCH_APP_LIST_SEARCH,
173 // User clicked the chrome app icon from the app launcher's main view.
174 APP_LAUNCH_APP_LIST_MAIN_CHROME,
176 // User clicked the webstore icon from the app launcher's main view.
177 APP_LAUNCH_APP_LIST_MAIN_WEBSTORE,
179 // User clicked the chrome app icon from the app launcher's search view.
180 APP_LAUNCH_APP_LIST_SEARCH_CHROME,
182 // User clicked the webstore icon from the app launcher's search view.
183 APP_LAUNCH_APP_LIST_SEARCH_WEBSTORE,
184 APP_LAUNCH_BUCKET_BOUNDARY,
185 APP_LAUNCH_BUCKET_INVALID
188 // The extension id of the ChromeVox extension.
189 extern const char kChromeVoxExtensionId[];
191 #if defined(OS_CHROMEOS)
192 // Path to preinstalled ChromeVox screen reader extension (relative to
193 // |chrome::DIR_RESOURCES|).
194 extern const char kChromeVoxExtensionPath[];
195 // Name of ChromeVox manifest file.
196 extern const char kChromeVoxManifestFilename[];
197 // Name of ChromeVox guest manifest file.
198 extern const char kChromeVoxGuestManifestFilename[];
199 // Extension id, path (relative to |chrome::DIR_RESOURCES|) and IME engine
200 // id for the builtin-in Braille IME extension.
201 extern const char kBrailleImeExtensionId[];
202 extern const char kBrailleImeExtensionPath[];
203 extern const char kBrailleImeEngineId[];
204 // Path to preinstalled Connectivity Diagnostics extension.
205 extern const char kConnectivityDiagnosticsPath[];
206 extern const char kConnectivityDiagnosticsKioskPath[];
207 extern const char kConnectivityDiagnosticsLauncherPath[];
208 // Path to preinstalled speech synthesis extension.
209 extern const char kSpeechSynthesisExtensionPath[];
210 // The extension id of the speech synthesis extension.
211 extern const char kSpeechSynthesisExtensionId[];
212 // The extension id of the wallpaper manager application.
213 extern const char kWallpaperManagerId[];
214 // The extension id of the first run dialog application.
215 extern const char kFirstRunDialogId[];
216 // The extension id of the new ZIP unpacker extension.
217 extern const char kZIPUnpackerExtensionId[];
218 #endif
220 // What causes an extension to be installed? Used in histograms, so don't
221 // change existing values.
222 enum CrxInstallCause {
223 INSTALL_CAUSE_UNSET = 0,
224 INSTALL_CAUSE_USER_DOWNLOAD,
225 INSTALL_CAUSE_UPDATE,
226 INSTALL_CAUSE_EXTERNAL_FILE,
227 INSTALL_CAUSE_AUTOMATION,
228 NUM_INSTALL_CAUSES
231 // The states that an app can be in, as reported by chrome.app.installState
232 // and chrome.app.runningState.
233 extern const char kAppStateNotInstalled[];
234 extern const char kAppStateInstalled[];
235 extern const char kAppStateDisabled[];
236 extern const char kAppStateRunning[];
237 extern const char kAppStateCannotRun[];
238 extern const char kAppStateReadyToRun[];
240 // The path part of the file system url used for media file systems.
241 extern const char kMediaFileSystemPathPart[];
243 // The key used for signing some pieces of data from the webstore.
244 extern const uint8 kWebstoreSignaturesPublicKey[];
245 extern const int kWebstoreSignaturesPublicKeySize;
247 } // namespace extension_misc
249 #endif // CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_