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