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