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