15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <string>
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h"
117dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch#include "url/gurl.h"
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace extension_urls {
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
151320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// This returns the compile-time constant webstore update url specific to
161320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Chrome. Usually you should prefer using GetWebstoreUpdateUrl.
17cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)GURL GetDefaultWebstoreUpdateUrl();
18cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
19c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Field to use with webstore URL for tracking launch source.
20c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kWebstoreSourceField[];
21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
22c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Values to use with webstore URL launch source field.
23c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kLaunchSourceAppList[];
24c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kLaunchSourceAppListSearch[];
25c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kLaunchSourceAppListInfoDialog[];
26c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
27c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch}  // namespace extension_urls
28c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
29c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochnamespace extension_misc {
30c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
31c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the bookmark manager.
32c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kBookmarkManagerId[];
33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
34c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Chrome component application.
35c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kChromeAppId[];
36c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
37c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Cloud Print component application.
38c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kCloudPrintAppId[];
39c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
40c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Easy Unlock component application.
41c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kEasyUnlockAppId[];
42c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
43c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Enterprise Web Store component application.
44c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kEnterpriseWebStoreAppId[];
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
46c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of GMail application.
47c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kGmailAppId[];
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
49c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Google Doc application.
50c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kGoogleDocAppId[];
515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
52c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Google Play Music application.
53c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kGooglePlayMusicAppId[];
545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
55c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Google Search application.
56c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kGoogleSearchAppId[];
57a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
58c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Google Sheets application.
59c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kGoogleSheetsAppId[];
602a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
61c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Google Slides application.
62c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kGoogleSlidesAppId[];
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
64c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the HTerm app for ChromeOS.
65c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kHTermAppId[];
662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
67c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the HTerm dev app for ChromeOS.
68c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kHTermDevAppId[];
69c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
70c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Identity API UI application.
71c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kIdentityApiUiAppId[];
722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
73c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Crosh component app for ChromeOS.
74c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kCroshBuiltinAppId[];
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
761320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// The extension id of the hotword audio verification dialogue app.
771320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciextern const char kHotwordAudioVerificationAppId[];
781320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
79c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the hotword voice search trigger extension.
80c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kHotwordExtensionId[];
812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
821320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// The extension id of the hotword shared module.
831320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciextern const char kHotwordSharedModuleId[];
841320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
85c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the PDF extension.
86c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kPdfExtensionId[];
8790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
88c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Office Viewer component extension.
89c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kQuickOfficeComponentExtensionId[];
9090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
91c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Office Viewer extension on the internal webstore.
92c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kQuickOfficeInternalExtensionId[];
935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
94c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Office Viewer extension.
95c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kQuickOfficeExtensionId[];
965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
97c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the settings application.
98c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kSettingsAppId[];
992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
100c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id used for testing streamsPrivate
101c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kStreamsPrivateTestExtensionId[];
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
103c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the Youtube application.
104c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kYoutubeAppId[];
1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
106c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the in-app payments support application.
107c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kInAppPaymentsSupportAppId[];
1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
109c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The name of the app launch histogram.
110c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppLaunchHistogram[];
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
112c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The name of the app launch histogram for platform apps.
113c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kPlatformAppLaunchHistogram[];
1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
115c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The buckets used for app launches.
116c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochenum AppLaunchBucket {
117c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch from NTP apps section while maximized.
118c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_APPS_MAXIMIZED,
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
120c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch from NTP apps section while collapsed.
121c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_APPS_COLLAPSED,
1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
123c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch from NTP apps section while in menu mode.
124c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_APPS_MENU,
1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
126c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch from NTP most visited section in any mode.
127c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_MOST_VISITED,
1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
129c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch from NTP recently closed section in any mode.
130c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_RECENTLY_CLOSED,
1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
132c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // App link clicked from bookmark bar.
133c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_BOOKMARK_BAR,
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
135c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Nvigated to an app from within a web page (like by clicking a link).
136c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_CONTENT_NAVIGATION,
1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
138c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch from session restore.
139c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_SESSION_RESTORE,
1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
141c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Autolaunched at startup, like for pinned tabs.
142c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_AUTOLAUNCH,
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
144c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launched from omnibox app links.
145c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_OMNIBOX_APP,
1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
147c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // App URL typed directly into the omnibox (w/ instant turned off).
148c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_OMNIBOX_LOCATION,
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
150c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Navigate to an app URL via instant.
151c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_OMNIBOX_INSTANT,
1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
153c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch via chrome.management.launchApp.
154c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_EXTENSION_API,
1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
156c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch an app via a shortcut. This includes using the --app or --app-id
157c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // command line arguments, or via an app shim process on Mac.
158c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_CMD_LINE_APP,
1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
160c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // App launch by passing the URL on the cmd line (not using app switches).
161c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_CMD_LINE_URL,
1622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
163c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked web store launcher on NTP.
164c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_WEBSTORE,
1652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
166c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // App launched after the user re-enabled it on the NTP.
167c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_APP_RE_ENABLE,
16890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
169c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // URL launched using the --app cmd line option, but the URL does not
170c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // correspond to an installed app. These launches are left over from a
171c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // feature that let you make desktop shortcuts from the file menu.
172c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_CMD_LINE_APP_LEGACY,
17390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
174c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked web store link on the NTP footer.
175c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_WEBSTORE_FOOTER,
17690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
177c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked [+] icon in apps page.
178c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_NTP_WEBSTORE_PLUS_ICON,
17990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
180c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked icon in app launcher main view.
181c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_APP_LIST_MAIN,
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
183c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked app launcher search result.
184c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_APP_LIST_SEARCH,
185c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
186c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked the chrome app icon from the app launcher's main view.
187c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_APP_LIST_MAIN_CHROME,
188c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
189c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked the webstore icon from the app launcher's main view.
190c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_APP_LIST_MAIN_WEBSTORE,
191c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
192c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked the chrome app icon from the app launcher's search view.
193c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_APP_LIST_SEARCH_CHROME,
194c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
195c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // User clicked the webstore icon from the app launcher's search view.
196c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_APP_LIST_SEARCH_WEBSTORE,
197c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_BUCKET_BOUNDARY,
198c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  APP_LAUNCH_BUCKET_INVALID
199c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch};
200c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
201c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the ChromeVox extension.
202c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kChromeVoxExtensionId[];
20358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(OS_CHROMEOS)
205c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Path to preinstalled ChromeVox screen reader extension (relative to
206c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// |chrome::DIR_RESOURCES|).
207c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kChromeVoxExtensionPath[];
208cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Name of ChromeVox manifest file.
209cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)extern const char kChromeVoxManifestFilename[];
210cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Name of ChromeVox guest manifest file.
211cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)extern const char kChromeVoxGuestManifestFilename[];
2121320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Name of ChromeVox next manifest file.
2131320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciextern const char kChromeVoxNextManifestFilename[];
2141320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Name of ChromeVox next guest manifest file.
2151320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucciextern const char kChromeVoxNextGuestManifestFilename[];
216010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)// Extension id, path (relative to |chrome::DIR_RESOURCES|) and IME engine
217010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)// id for the builtin-in Braille IME extension.
218010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)extern const char kBrailleImeExtensionId[];
219010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)extern const char kBrailleImeExtensionPath[];
220010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)extern const char kBrailleImeEngineId[];
221c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Path to preinstalled Connectivity Diagnostics extension.
222c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kConnectivityDiagnosticsPath[];
223010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)extern const char kConnectivityDiagnosticsKioskPath[];
224c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kConnectivityDiagnosticsLauncherPath[];
225c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Path to preinstalled speech synthesis extension.
226c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kSpeechSynthesisExtensionPath[];
227c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the speech synthesis extension.
228c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kSpeechSynthesisExtensionId[];
229c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the wallpaper manager application.
230c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kWallpaperManagerId[];
231c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The extension id of the first run dialog application.
232c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kFirstRunDialogId[];
2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
235c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// What causes an extension to be installed? Used in histograms, so don't
236c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// change existing values.
237c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochenum CrxInstallCause {
238c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  INSTALL_CAUSE_UNSET = 0,
239c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  INSTALL_CAUSE_USER_DOWNLOAD,
240c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  INSTALL_CAUSE_UPDATE,
241c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  INSTALL_CAUSE_EXTERNAL_FILE,
242c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  INSTALL_CAUSE_AUTOMATION,
243c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  NUM_INSTALL_CAUSES
244c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch};
245c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
246c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The states that an app can be in, as reported by chrome.app.installState
247c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// and chrome.app.runningState.
248c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppStateNotInstalled[];
249c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppStateInstalled[];
250c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppStateDisabled[];
251c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppStateRunning[];
252c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppStateCannotRun[];
253c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kAppStateReadyToRun[];
254c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
255c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// The path part of the file system url used for media file systems.
256c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochextern const char kMediaFileSystemPathPart[];
2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
258cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// The key used for signing some pieces of data from the webstore.
259cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)extern const uint8 kWebstoreSignaturesPublicKey[];
260cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)extern const int kWebstoreSignaturesPublicKeySize;
261cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)
262c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)}  // namespace extension_misc
2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
264a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)namespace extensions {
265c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
266c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// This enum is used for the launch type the user wants to use for an
267c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// application.
268c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Do not remove items or re-order this enum as it is used in preferences
269c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// and histograms.
270c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochenum LaunchType {
271c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_INVALID = -1,
272c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_FIRST = 0,
273c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_PINNED = LAUNCH_TYPE_FIRST,
274c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_REGULAR = 1,
275c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_FULLSCREEN = 2,
276c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_WINDOW = 3,
277c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  NUM_LAUNCH_TYPES,
278c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
279c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // Launch an app in the in the way a click on the NTP would,
280c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // if no user pref were set.  Update this constant to change
281c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // the default for the NTP and chrome.management.launchApp().
282c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_TYPE_DEFAULT = LAUNCH_TYPE_REGULAR
283c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch};
284c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
285c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// Don't remove items or change the order of this enum.  It's used in
286c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch// histograms and preferences.
287c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdochenum LaunchContainer {
288c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_CONTAINER_WINDOW,
289c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_CONTAINER_PANEL,
290c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_CONTAINER_TAB,
291c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // For platform apps, which don't actually have a container (they just get a
292c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  // "onLaunched" event).
293c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch  LAUNCH_CONTAINER_NONE
294c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch};
295c5cede9ae108bb15f6b7a8aea21c7e1fefa2834cBen Murdoch
296a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)}  // namespace extensions
297a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)
2985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif  // CHROME_COMMON_EXTENSIONS_EXTENSION_CONSTANTS_H_
299