1 // Copyright 2013 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 #ifndef EXTENSIONS_COMMON_MANIFEST_CONSTANTS_H_ 6 #define EXTENSIONS_COMMON_MANIFEST_CONSTANTS_H_ 7 8 namespace extensions { 9 10 // Keys used in JSON representation of extensions. 11 namespace manifest_keys { 12 13 extern const char kAboutPage[]; 14 extern const char kAllFrames[]; 15 extern const char kAltKey[]; 16 extern const char kApp[]; 17 extern const char kAutomation[]; 18 extern const char kBackgroundAllowJsAccess[]; 19 extern const char kBackgroundPage[]; 20 extern const char kBackgroundPageLegacy[]; 21 extern const char kBackgroundPersistent[]; 22 extern const char kBackgroundScripts[]; 23 extern const char kBluetooth[]; 24 extern const char kBookmarkUI[]; 25 extern const char kBrowserAction[]; 26 extern const char kBrowseURLs[]; 27 extern const char kChromeURLOverrides[]; 28 extern const char kCommands[]; 29 extern const char kContentPack[]; 30 extern const char kContentPackSites[]; 31 extern const char kContentScripts[]; 32 extern const char kContentSecurityPolicy[]; 33 extern const char kConvertedFromUserScript[]; 34 extern const char kCss[]; 35 extern const char kCtrlKey[]; 36 extern const char kCurrentLocale[]; 37 extern const char kDefaultLocale[]; 38 extern const char kDescription[]; 39 extern const char kDevToolsPage[]; 40 extern const char kDisplayInLauncher[]; 41 extern const char kDisplayInNewTabPage[]; 42 extern const char kEventName[]; 43 extern const char kExcludeGlobs[]; 44 extern const char kExcludeMatches[]; 45 extern const char kExport[]; 46 extern const char kExternallyConnectable[]; 47 extern const char kFileAccessList[]; 48 extern const char kFileHandlers[]; 49 extern const char kFileHandlerExtensions[]; 50 extern const char kFileHandlerTitle[]; 51 extern const char kFileHandlerTypes[]; 52 extern const char kFileFilters[]; 53 extern const char kFileBrowserHandlers[]; 54 extern const char kGlobal[]; 55 extern const char kHideBookmarkButton[]; 56 extern const char kHomepageURL[]; 57 extern const char kIcons[]; 58 extern const char kId[]; 59 extern const char kImeOptionsPage[]; 60 extern const char kImport[]; 61 extern const char kIncognito[]; 62 extern const char kIncludeGlobs[]; 63 extern const char kInputComponents[]; 64 extern const char kInputView[]; 65 extern const char kIntentDisposition[]; 66 extern const char kIntentHref[]; 67 extern const char kIntentPath[]; 68 extern const char kIntents[]; 69 extern const char kIntentTitle[]; 70 extern const char kIntentType[]; 71 extern const char kIsolation[]; 72 extern const char kJs[]; 73 extern const char kKey[]; 74 extern const char kKeycode[]; 75 extern const char kKioskEnabled[]; 76 extern const char kKioskOnly[]; 77 extern const char kKioskMode[]; 78 extern const char kLanguage[]; 79 extern const char kLaunch[]; 80 extern const char kLaunchContainer[]; 81 extern const char kLaunchHeight[]; 82 extern const char kLaunchLocalPath[]; 83 extern const char kLaunchWebURL[]; 84 extern const char kLaunchWidth[]; 85 extern const char kLayouts[]; 86 extern const char kManifestVersion[]; 87 extern const char kMatchAboutBlank[]; 88 extern const char kMatches[]; 89 extern const char kMIMETypes[]; 90 extern const char kMimeTypesHandler[]; 91 extern const char kMinimumChromeVersion[]; 92 extern const char kMinimumVersion[]; 93 extern const char kNaClModules[]; 94 extern const char kNaClModulesMIMEType[]; 95 extern const char kNaClModulesPath[]; 96 extern const char kName[]; 97 extern const char kOAuth2[]; 98 extern const char kOAuth2AutoApprove[]; 99 extern const char kOAuth2ClientId[]; 100 extern const char kOAuth2Scopes[]; 101 extern const char kOfflineEnabled[]; 102 extern const char kOmnibox[]; 103 extern const char kOmniboxKeyword[]; 104 extern const char kOptionalPermissions[]; 105 extern const char kOptionsPage[]; 106 extern const char kOverrideHomepage[]; 107 extern const char kOverrideSearchProvider[]; 108 extern const char kOverrideStartupPage[]; 109 extern const char kPageAction[]; 110 extern const char kPageActionDefaultIcon[]; 111 extern const char kPageActionDefaultPopup[]; 112 extern const char kPageActionDefaultTitle[]; 113 extern const char kPageActionIcons[]; 114 extern const char kPageActionId[]; 115 extern const char kPageActionPopup[]; 116 extern const char kPageActionPopupPath[]; 117 extern const char kPageActions[]; 118 extern const char kPermissions[]; 119 extern const char kPlatformAppBackground[]; 120 extern const char kPlatformAppBackgroundPage[]; 121 extern const char kPlatformAppBackgroundScripts[]; 122 extern const char kPlatformAppContentSecurityPolicy[]; 123 extern const char kPlatformAppServiceWorker[]; 124 extern const char kPlatformAppServiceWorkerScript[]; 125 extern const char kPlugins[]; 126 extern const char kPluginsPath[]; 127 extern const char kPluginsPublic[]; 128 extern const char kPublicKey[]; 129 extern const char kRemoveButton[]; 130 extern const char kResources[]; 131 extern const char kRequirements[]; 132 extern const char kRunAt[]; 133 extern const char kSandboxedPages[]; 134 extern const char kSandboxedPagesCSP[]; 135 extern const char kScriptBadge[]; 136 extern const char kSettingsOverride[]; 137 extern const char kSettingsOverrideAlternateUrls[]; 138 extern const char kShiftKey[]; 139 extern const char kShortcutKey[]; 140 extern const char kShortName[]; 141 extern const char kSignature[]; 142 extern const char kSockets[]; 143 extern const char kSpellcheck[]; 144 extern const char kSpellcheckDictionaryFormat[]; 145 extern const char kSpellcheckDictionaryLanguage[]; 146 extern const char kSpellcheckDictionaryLocale[]; 147 extern const char kSpellcheckDictionaryPath[]; 148 extern const char kStorageManagedSchema[]; 149 extern const char kSuggestedKey[]; 150 extern const char kSystemIndicator[]; 151 extern const char kTheme[]; 152 extern const char kThemeColors[]; 153 extern const char kThemeDisplayProperties[]; 154 extern const char kThemeImages[]; 155 extern const char kThemeTints[]; 156 extern const char kTtsEngine[]; 157 extern const char kTtsGenderFemale[]; 158 extern const char kTtsGenderMale[]; 159 extern const char kTtsVoices[]; 160 extern const char kTtsVoicesEventTypeEnd[]; 161 extern const char kTtsVoicesEventTypeError[]; 162 extern const char kTtsVoicesEventTypeMarker[]; 163 extern const char kTtsVoicesEventTypeSentence[]; 164 extern const char kTtsVoicesEventTypeStart[]; 165 extern const char kTtsVoicesEventTypeWord[]; 166 extern const char kTtsVoicesEventTypes[]; 167 extern const char kTtsVoicesGender[]; 168 extern const char kTtsVoicesLang[]; 169 extern const char kTtsVoicesRemote[]; 170 extern const char kTtsVoicesVoiceName[]; 171 extern const char kType[]; 172 extern const char kUIOverride[]; 173 extern const char kUpdateURL[]; 174 extern const char kUrlHandlers[]; 175 extern const char kUrlHandlerTitle[]; 176 extern const char kVersion[]; 177 extern const char kWebAccessibleResources[]; 178 extern const char kWebURLs[]; 179 extern const char kWebview[]; 180 extern const char kWebviewName[]; 181 extern const char kWebviewAccessibleResources[]; 182 extern const char kWebviewPartitions[]; 183 extern const char kWhitelist[]; 184 185 } // namespace manifest_keys 186 187 // Some values expected in manifests. 188 namespace manifest_values { 189 190 extern const char kBrowserActionCommandEvent[]; 191 extern const char kIncognitoSplit[]; 192 extern const char kIncognitoSpanning[]; 193 extern const char kIntentDispositionWindow[]; 194 extern const char kIntentDispositionInline[]; 195 extern const char kIsolatedStorage[]; 196 extern const char kKeybindingPlatformChromeOs[]; 197 extern const char kKeybindingPlatformDefault[]; 198 extern const char kKeybindingPlatformLinux[]; 199 extern const char kKeybindingPlatformMac[]; 200 extern const char kKeybindingPlatformWin[]; 201 extern const char kKeyAlt[]; 202 extern const char kKeyShift[]; 203 extern const char kKeyCommand[]; 204 extern const char kKeyCtrl[]; 205 extern const char kKeyComma[]; 206 extern const char kKeyDel[]; 207 extern const char kKeyDown[]; 208 extern const char kKeyHome[]; 209 extern const char kKeyEnd[]; 210 extern const char kKeyIns[]; 211 extern const char kKeyLeft[]; 212 extern const char kKeyMacCtrl[]; 213 extern const char kKeyMediaNextTrack[]; 214 extern const char kKeyMediaPlayPause[]; 215 extern const char kKeyMediaPrevTrack[]; 216 extern const char kKeyMediaStop[]; 217 extern const char kKeyPgDwn[]; 218 extern const char kKeyPgUp[]; 219 extern const char kKeyPeriod[]; 220 extern const char kKeyRight[]; 221 extern const char kKeySeparator[]; 222 extern const char kKeyTab[]; 223 extern const char kKeyUp[]; 224 extern const char kLaunchContainerPanel[]; 225 extern const char kLaunchContainerTab[]; 226 extern const char kLaunchContainerWindow[]; 227 extern const char kPageActionCommandEvent[]; 228 extern const char kPageActionTypePermanent[]; 229 extern const char kPageActionTypeTab[]; 230 extern const char kScriptBadgeCommandEvent[]; 231 extern const char kRunAtDocumentEnd[]; 232 extern const char kRunAtDocumentIdle[]; 233 extern const char kRunAtDocumentStart[]; 234 235 } // namespace manifest_values 236 237 // Error messages returned from extension installation. 238 namespace manifest_errors { 239 240 extern const char kActiveTabPermissionNotGranted[]; 241 extern const char kAllURLOrActiveTabNeeded[]; 242 extern const char kAppsNotEnabled[]; 243 extern const char kBackgroundPermissionNeeded[]; 244 extern const char kBackgroundRequiredForPlatformApps[]; 245 extern const char kCannotAccessChromeUrl[]; 246 extern const char kCannotAccessExtensionUrl[]; 247 extern const char kCannotAccessPage[]; 248 extern const char kCannotChangeExtensionID[]; 249 extern const char kCannotClaimAllHostsInExtent[]; 250 extern const char kCannotClaimAllURLsInExtent[]; 251 extern const char kCannotScriptGallery[]; 252 extern const char kCannotScriptSigninPage[]; 253 extern const char kCannotUninstallManagedExtension[]; 254 extern const char kChromeVersionTooLow[]; 255 extern const char kDevToolsExperimental[]; 256 extern const char kDisabledByPolicy[]; 257 extern const char kExpectString[]; 258 extern const char kExperimentalFlagRequired[]; 259 extern const char kInvalidAboutPage[]; 260 extern const char kInvalidAboutPageExpectRelativePath[]; 261 extern const char kInvalidAllFrames[]; 262 extern const char kInvalidBackground[]; 263 extern const char kInvalidBackgroundAllowJsAccess[]; 264 extern const char kInvalidBackgroundCombination[]; 265 extern const char kInvalidBackgroundScript[]; 266 extern const char kInvalidBackgroundScripts[]; 267 extern const char kInvalidBackgroundInHostedApp[]; 268 extern const char kInvalidBackgroundPersistent[]; 269 extern const char kInvalidBackgroundPersistentNoPage[]; 270 extern const char kInvalidBrowserAction[]; 271 extern const char kInvalidBrowseURL[]; 272 extern const char kInvalidBrowseURLs[]; 273 extern const char kInvalidChromeURLOverrides[]; 274 extern const char kInvalidCommandsKey[]; 275 extern const char kInvalidContentPack[]; 276 extern const char kInvalidContentPackSites[]; 277 extern const char kInvalidContentScript[]; 278 extern const char kInvalidContentScriptsList[]; 279 extern const char kInvalidContentSecurityPolicy[]; 280 extern const char kInvalidCss[]; 281 extern const char kInvalidCssList[]; 282 extern const char kInvalidDefaultLocale[]; 283 extern const char kInvalidDescription[]; 284 extern const char kInvalidDevToolsPage[]; 285 extern const char kInvalidDisplayInLauncher[]; 286 extern const char kInvalidDisplayInNewTabPage[]; 287 extern const char kInvalidEmptyDictionary[]; 288 extern const char kInvalidExcludeMatch[]; 289 extern const char kInvalidExcludeMatches[]; 290 extern const char kInvalidExport[]; 291 extern const char kInvalidExportPermissions[]; 292 extern const char kInvalidExportResources[]; 293 extern const char kInvalidExportResourcesString[]; 294 extern const char kInvalidExportWhitelist[]; 295 extern const char kInvalidExportWhitelistString[]; 296 extern const char kInvalidFileAccessList[]; 297 extern const char kInvalidFileAccessValue[]; 298 extern const char kInvalidFileBrowserHandler[]; 299 extern const char kInvalidFileBrowserHandlerMIMETypes[]; 300 extern const char kInvalidFileFiltersList[]; 301 extern const char kInvalidFileFilterValue[]; 302 extern const char kInvalidFileHandlers[]; 303 extern const char kInvalidFileHandlersTooManyTypesAndExtensions[]; 304 extern const char kInvalidFileHandlerExtension[]; 305 extern const char kInvalidFileHandlerExtensionElement[]; 306 extern const char kInvalidFileHandlerNoTypeOrExtension[]; 307 extern const char kInvalidFileHandlerTitle[]; 308 extern const char kInvalidFileHandlerType[]; 309 extern const char kInvalidFileHandlerTypeElement[]; 310 extern const char kInvalidGlob[]; 311 extern const char kInvalidGlobList[]; 312 extern const char kInvalidHomepageOverrideURL[]; 313 extern const char kInvalidHomepageURL[]; 314 extern const char kInvalidIconPath[]; 315 extern const char kInvalidIcons[]; 316 extern const char kInvalidImport[]; 317 extern const char kInvalidImportAndExport[]; 318 extern const char kInvalidImportId[]; 319 extern const char kInvalidImportVersion[]; 320 extern const char kInvalidIncognitoBehavior[]; 321 extern const char kInvalidInputComponents[]; 322 extern const char kInvalidInputComponentDescription[]; 323 extern const char kInvalidInputComponentLayoutName[]; 324 extern const char kInvalidInputComponentName[]; 325 extern const char kInvalidInputComponentShortcutKey[]; 326 extern const char kInvalidInputComponentShortcutKeycode[]; 327 extern const char kInvalidInputComponentType[]; 328 extern const char kInvalidInputView[]; 329 extern const char kInvalidIntent[]; 330 extern const char kInvalidIntentDisposition[]; 331 extern const char kInvalidIntentDispositionInPlatformApp[]; 332 extern const char kInvalidIntentHref[]; 333 extern const char kInvalidIntentHrefEmpty[]; 334 extern const char kInvalidIntentHrefInPlatformApp[]; 335 extern const char kInvalidIntentHrefOldAndNewKey[]; 336 extern const char kInvalidIntentPageInHostedApp[]; 337 extern const char kInvalidIntents[]; 338 extern const char kInvalidIntentType[]; 339 extern const char kInvalidIntentTypeElement[]; 340 extern const char kInvalidIntentTitle[]; 341 extern const char kInvalidIsolation[]; 342 extern const char kInvalidIsolationValue[]; 343 extern const char kInvalidJs[]; 344 extern const char kInvalidJsList[]; 345 extern const char kInvalidKey[]; 346 extern const char kInvalidKeyBinding[]; 347 extern const char kInvalidKeyBindingDescription[]; 348 extern const char kInvalidKeyBindingDictionary[]; 349 extern const char kInvalidKeyBindingMediaKeyWithModifier[]; 350 extern const char kInvalidKeyBindingMissingPlatform[]; 351 extern const char kInvalidKeyBindingTooMany[]; 352 extern const char kInvalidKeyBindingUnknownPlatform[]; 353 extern const char kInvalidKioskEnabled[]; 354 extern const char kInvalidKioskOnly[]; 355 extern const char kInvalidKioskOnlyButNotEnabled[]; 356 extern const char kInvalidLaunchContainer[]; 357 extern const char kInvalidLaunchValue[]; 358 extern const char kInvalidLaunchValueContainer[]; 359 extern const char kInvalidManifest[]; 360 extern const char kInvalidManifestVersion[]; 361 extern const char kInvalidManifestVersionOld[]; 362 extern const char kInvalidMatch[]; 363 extern const char kInvalidMatchAboutBlank[]; 364 extern const char kInvalidMatchCount[]; 365 extern const char kInvalidMatches[]; 366 extern const char kInvalidMIMETypes[]; 367 extern const char kInvalidMimeTypesHandler[]; 368 extern const char kInvalidMinimumChromeVersion[]; 369 extern const char kInvalidNaClModules[]; 370 extern const char kInvalidNaClModulesMIMEType[]; 371 extern const char kInvalidNaClModulesPath[]; 372 extern const char kInvalidName[]; 373 extern const char kInvalidOAuth2AutoApprove[]; 374 extern const char kInvalidOAuth2ClientId[]; 375 extern const char kInvalidOAuth2Scopes[]; 376 extern const char kInvalidOfflineEnabled[]; 377 extern const char kInvalidOmniboxKeyword[]; 378 extern const char kInvalidOptionsPage[]; 379 extern const char kInvalidOptionsPageExpectUrlInPackage[]; 380 extern const char kInvalidOptionsPageInHostedApp[]; 381 extern const char kInvalidPageAction[]; 382 extern const char kInvalidPageActionDefaultTitle[]; 383 extern const char kInvalidPageActionIconPath[]; 384 extern const char kInvalidPageActionId[]; 385 extern const char kInvalidPageActionName[]; 386 extern const char kInvalidPageActionOldAndNewKeys[]; 387 extern const char kInvalidPageActionPopup[]; 388 extern const char kInvalidPageActionPopupHeight[]; 389 extern const char kInvalidPageActionPopupPath[]; 390 extern const char kInvalidPageActionsList[]; 391 extern const char kInvalidPageActionsListSize[]; 392 extern const char kInvalidPageActionTypeValue[]; 393 extern const char kInvalidPermissionWithDetail[]; 394 extern const char kInvalidPermission[]; 395 extern const char kInvalidPermissions[]; 396 extern const char kInvalidPermissionScheme[]; 397 extern const char kInvalidPlugins[]; 398 extern const char kInvalidPluginsPath[]; 399 extern const char kInvalidPluginsPublic[]; 400 extern const char kInvalidRequirement[]; 401 extern const char kInvalidRequirements[]; 402 extern const char kInvalidRunAt[]; 403 extern const char kInvalidSandboxedPagesList[]; 404 extern const char kInvalidSandboxedPage[]; 405 extern const char kInvalidSandboxedPagesCSP[]; 406 extern const char kInvalidScriptBadge[]; 407 extern const char kInvalidSearchEngineMissingKeys[]; 408 extern const char kInvalidSearchEngineURL[]; 409 extern const char kInvalidServiceWorkerScript[]; 410 extern const char kInvalidShortName[]; 411 extern const char kInvalidSignature[]; 412 extern const char kInvalidSpellcheck[]; 413 extern const char kInvalidSpellcheckDictionaryFormat[]; 414 extern const char kInvalidSpellcheckDictionaryLanguage[]; 415 extern const char kInvalidSpellcheckDictionaryLocale[]; 416 extern const char kInvalidSpellcheckDictionaryPath[]; 417 extern const char kInvalidStartupOverrideURL[]; 418 extern const char kInvalidSystemIndicator[]; 419 extern const char kInvalidTheme[]; 420 extern const char kInvalidThemeColors[]; 421 extern const char kInvalidThemeImages[]; 422 extern const char kInvalidThemeImagesMissing[]; 423 extern const char kInvalidThemeTints[]; 424 extern const char kInvalidTts[]; 425 extern const char kInvalidTtsVoices[]; 426 extern const char kInvalidTtsVoicesEventTypes[]; 427 extern const char kInvalidTtsVoicesGender[]; 428 extern const char kInvalidTtsVoicesLang[]; 429 extern const char kInvalidTtsVoicesRemote[]; 430 extern const char kInvalidTtsVoicesVoiceName[]; 431 extern const char kInvalidUpdateURL[]; 432 extern const char kInvalidURLPatternError[]; 433 extern const char kInvalidURLHandlers[]; 434 extern const char kInvalidURLHandlerPatternElement[]; 435 extern const char kInvalidURLHandlerTitle[]; 436 extern const char kInvalidURLHandlerPattern[]; 437 extern const char kInvalidVersion[]; 438 extern const char kInvalidWebAccessibleResourcesList[]; 439 extern const char kInvalidWebAccessibleResource[]; 440 extern const char kInvalidWebview[]; 441 extern const char kInvalidWebviewAccessibleResourcesList[]; 442 extern const char kInvalidWebviewAccessibleResource[]; 443 extern const char kInvalidWebviewPartition[]; 444 extern const char kInvalidWebviewPartitionName[]; 445 extern const char kInvalidWebviewPartitionsList[]; 446 extern const char kInvalidWebURL[]; 447 extern const char kInvalidWebURLs[]; 448 extern const char kInvalidZipHash[]; 449 extern const char kInsecureContentSecurityPolicy[]; 450 extern const char kKeyIsDeprecatedWithReplacement[]; 451 extern const char kLaunchPathAndExtentAreExclusive[]; 452 extern const char kLaunchPathAndURLAreExclusive[]; 453 extern const char kLaunchURLRequired[]; 454 extern const char kLocalesInvalidLocale[]; 455 extern const char kLocalesMessagesFileMissing[]; 456 extern const char kLocalesNoDefaultLocaleSpecified[]; 457 extern const char kLocalesNoDefaultMessages[]; 458 extern const char kLocalesNoValidLocaleNamesListed[]; 459 extern const char kLocalesTreeMissing[]; 460 extern const char kManifestParseError[]; 461 extern const char kManifestUnreadable[]; 462 extern const char kMissingFile[]; 463 extern const char kMultipleOverrides[]; 464 extern const char kNoPermissionForMIMETypes[]; 465 extern const char kNoWildCardsInPaths[]; 466 extern const char kOneUISurfaceOnly[]; 467 extern const char kPermissionMustBeOptional[]; 468 extern const char kPermissionNotAllowed[]; 469 extern const char kPermissionNotAllowedInManifest[]; 470 extern const char kPermissionUnknownOrMalformed[]; 471 extern const char kReservedMessageFound[]; 472 extern const char kUnrecognizedManifestKey[]; 473 extern const char kUnrecognizedManifestProperty[]; 474 extern const char kScriptBadgeRequiresFlag[]; 475 extern const char kScriptBadgeIconIgnored[]; 476 extern const char kScriptBadgeTitleIgnored[]; 477 extern const char kServiceWorkerRequiresFlag[]; 478 extern const char kWebRequestConflictsWithLazyBackground[]; 479 #if defined(OS_CHROMEOS) 480 extern const char kIllegalPlugins[]; 481 #endif 482 483 } // namespace manifest_errors 484 485 } // namespace extensions 486 487 #endif // EXTENSIONS_COMMON_MANIFEST_CONSTANTS_H_ 488