summaryrefslogtreecommitdiff
path: root/extensions
diff options
context:
space:
mode:
authorTorne (Richard Coles) <torne@google.com>2013-09-19 22:36:51 +0100
committerTorne (Richard Coles) <torne@google.com>2013-09-19 22:36:51 +0100
commitd0247b1b59f9c528cb6df88b4f2b9afaf80d181e (patch)
tree5c397fadc190cc71bffe2ffad1efc27a5b95309d /extensions
parentf7571f5f07547e2f3e0addf48d1f2a7ec3632957 (diff)
downloadchromium_org-d0247b1b59f9c528cb6df88b4f2b9afaf80d181e.tar.gz
Merge from Chromium at DEPS revision 224184
This commit was generated by merge_to_master.py. Change-Id: Ia3424df5abed9bea642c522b9e2358dceabd8423
Diffstat (limited to 'extensions')
-rw-r--r--extensions/OWNERS15
-rw-r--r--extensions/common/manifest_constants.cc493
-rw-r--r--extensions/common/manifest_constants.h561
-rw-r--r--extensions/common/url_pattern.cc4
4 files changed, 919 insertions, 154 deletions
diff --git a/extensions/OWNERS b/extensions/OWNERS
index a6cd87dfa0..3393de66e4 100644
--- a/extensions/OWNERS
+++ b/extensions/OWNERS
@@ -1,11 +1,14 @@
-# This should match chrome/browser/extensions/OWNERS
+# Extension and apps team owners. Use file history to guide reviewer selection
+# as this list is randomized. If editing, see chrome/browser/extensions/OWNERS
+koz@chromium.org
+yoz@chromium.org
asargent@chromium.org
-benwells@chromium.org
-finnur@chromium.org
+scheib@chromium.org
+mpcomplete@chromium.org
jyasskin@chromium.org
kalman@chromium.org
-koz@chromium.org
mek@chromium.org
miket@chromium.org
-mpcomplete@chromium.org
-yoz@chromium.org
+finnur@chromium.org
+benwells@chromium.org
+
diff --git a/extensions/common/manifest_constants.cc b/extensions/common/manifest_constants.cc
index cc73f02269..7ab1d23ad1 100644
--- a/extensions/common/manifest_constants.cc
+++ b/extensions/common/manifest_constants.cc
@@ -151,11 +151,504 @@ const char kWebURLs[] = "app.urls";
} // namespace manifest_keys
+namespace manifest_values {
+
+const char kBrowserActionCommandEvent[] = "_execute_browser_action";
+const char kIncognitoSplit[] = "split";
+const char kIncognitoSpanning[] = "spanning";
+const char kIntentDispositionWindow[] = "window";
+const char kIntentDispositionInline[] = "inline";
+const char kIsolatedStorage[] = "storage";
+const char kKeybindingPlatformChromeOs[] = "chromeos";
+const char kKeybindingPlatformDefault[] = "default";
+const char kKeybindingPlatformLinux[] = "linux";
+const char kKeybindingPlatformMac[] = "mac";
+const char kKeybindingPlatformWin[] = "windows";
+const char kKeyAlt[] = "Alt";
+const char kKeyComma[] = "Comma";
+const char kKeyCommand[] = "Command";
+const char kKeyCtrl[] = "Ctrl";
+const char kKeyDel[] = "Delete";
+const char kKeyDown[] = "Down";
+const char kKeyEnd[] = "End";
+const char kKeyHome[] = "Home";
+const char kKeyIns[] = "Insert";
+const char kKeyLeft[] = "Left";
+const char kKeyMacCtrl[] = "MacCtrl";
+const char kKeyMediaNextTrack[] = "MediaNextTrack";
+const char kKeyMediaPlayPause[] = "MediaPlayPause";
+const char kKeyMediaPrevTrack[] = "MediaPrevTrack";
+const char kKeyMediaStop[] = "MediaStop";
+const char kKeyPgDwn[] = "PageDown";
+const char kKeyPgUp[] = "PageUp";
+const char kKeyPeriod[] = "Period";
+const char kKeyRight[] = "Right";
+const char kKeySeparator[] = "+";
+const char kKeyShift[] = "Shift";
+const char kKeyTab[] = "Tab";
+const char kKeyUp[] = "Up";
+const char kRunAtDocumentStart[] = "document_start";
+const char kRunAtDocumentEnd[] = "document_end";
+const char kRunAtDocumentIdle[] = "document_idle";
+const char kPageActionCommandEvent[] = "_execute_page_action";
+const char kPageActionTypeTab[] = "tab";
+const char kPageActionTypePermanent[] = "permanent";
+const char kScriptBadgeCommandEvent[] = "_execute_script_badge";
+const char kLaunchContainerPanel[] = "panel";
+const char kLaunchContainerTab[] = "tab";
+const char kLaunchContainerWindow[] = "window";
+
+} // namespace manifest_values
+
+// Extension-related error messages. Some of these are simple patterns, where a
+// '*' is replaced at runtime with a specific value. This is used instead of
+// printf because we want to unit test them and scanf is hard to make
+// cross-platform.
namespace manifest_errors {
+const char kAppsNotEnabled[] =
+ "Apps are not enabled.";
+const char kBackgroundPermissionNeeded[] =
+ "Hosted apps that use 'background_page' must have the 'background' "
+ "permission.";
+const char kBackgroundRequiredForPlatformApps[] =
+ "Packaged apps must have a background page or background scripts.";
+const char kCannotAccessChromeUrl[] = "Cannot access a chrome:// URL";
+const char kCannotAccessExtensionUrl[] =
+ "Cannot access a chrome-extension:// URL of different extension";
+const char kCannotAccessPage[] =
+ "Cannot access contents of url \"*\". "
+ "Extension manifest must request permission to access this host.";
+const char kCannotChangeExtensionID[] =
+ "Installed extensions cannot change their IDs.";
+const char kCannotClaimAllHostsInExtent[] =
+ "Cannot claim all hosts ('*') in an extent.";
+const char kCannotClaimAllURLsInExtent[] =
+ "Cannot claim all URLs in an extent.";
+const char kCannotScriptGallery[] =
+ "The extensions gallery cannot be scripted.";
+const char kCannotScriptSigninPage[] =
+ "The sign-in page cannot be scripted.";
+const char kChromeVersionTooLow[] =
+ "This extension requires * version * or greater.";
+const char kDisabledByPolicy[] =
+ "This extension has been disabled by your administrator.";
+const char kExpectString[] = "Expect string value.";
+const char kExperimentalFlagRequired[] =
+ "Loading extensions with 'experimental' permission is turned off by "
+ "default. You can enable 'Experimental Extension APIs' "
+ "by visiting chrome://flags.";
+const char kInvalidAllFrames[] =
+ "Invalid value for 'content_scripts[*].all_frames'.";
+const char kInvalidBackground[] =
+ "Invalid value for 'background_page'.";
+const char kInvalidBackgroundAllowJsAccess[] =
+ "Invalid value for 'background.allow_js_access'.";
+const char kInvalidBackgroundCombination[] =
+ "The background.page and background.scripts properties cannot be used at "
+ "the same time.";
+const char kInvalidBackgroundScript[] =
+ "Invalid value for 'background.scripts[*]'.";
+const char kInvalidBackgroundScripts[] =
+ "Invalid value for 'background.scripts'.";
+const char kInvalidBackgroundInHostedApp[] =
+ "Invalid value for 'background_page'. Hosted apps must specify an "
+ "absolute HTTPS URL for the background page.";
+const char kInvalidBackgroundPersistent[] =
+ "Invalid value for 'background.persistent'.";
+const char kInvalidBackgroundPersistentNoPage[] =
+ "Must specify one of background.page or background.scripts to use"
+ " background.persistent.";
+const char kInvalidBrowserAction[] =
+ "Invalid value for 'browser_action'.";
+const char kInvalidChromeURLOverrides[] =
+ "Invalid value for 'chrome_url_overrides'.";
+const char kInvalidCommandsKey[] =
+ "Invalid value for 'commands'.";
+const char kInvalidContentPack[] =
+ "Invalid value for 'content_pack'.";
+const char kInvalidContentPackSites[] =
+ "Invalid value for Content Pack sites - files must be strings.";
+const char kInvalidContentScript[] =
+ "Invalid value for 'content_scripts[*]'.";
+const char kInvalidContentSecurityPolicy[] =
+ "Invalid value for 'content_security_policy'.";
+const char kInvalidContentScriptsList[] =
+ "Invalid value for 'content_scripts'.";
+const char kInvalidCss[] =
+ "Invalid value for 'content_scripts[*].css[*]'.";
+const char kInvalidCssList[] =
+ "Required value 'content_scripts[*].css' is invalid.";
+const char kInvalidDefaultLocale[] =
+ "Invalid value for default locale - locale name must be a string.";
+const char kInvalidDescription[] =
+ "Invalid value for 'description'.";
+const char kInvalidDevToolsPage[] =
+ "Invalid value for 'devtools_page'.";
+const char kInvalidDisplayInLauncher[] =
+ "Invalid value for 'display_in_launcher'.";
+const char kInvalidDisplayInNewTabPage[] =
+ "Invalid value for 'display_in_new_tab_page'.";
+const char kInvalidExcludeMatch[] =
+ "Invalid value for 'content_scripts[*].exclude_matches[*]': *";
+const char kInvalidExcludeMatches[] =
+ "Invalid value for 'content_scripts[*].exclude_matches'.";
+const char kInvalidExport[] =
+ "Invalid value for 'export'.";
+const char kInvalidExportPermissions[] =
+ "Permissions are not allowed for extensions that export resources.";
+const char kInvalidExportResources[] =
+ "Invalid value for 'export.resources'.";
+const char kInvalidExportResourcesString[] =
+ "Invalid value for 'export.resources[*]'.";
+const char kInvalidFileAccessList[] =
+ "Invalid value for 'file_access'.";
+const char kInvalidFileAccessValue[] =
+ "Invalid value for 'file_access[*]'.";
+const char kInvalidFileBrowserHandler[] =
+ "Invalid value for 'file_browser_handlers'.";
+const char kInvalidMediaGalleriesHandler[] =
+ "Invalid value for 'media_galleries_handlers'.";
+const char kInvalidFileFiltersList[] =
+ "Invalid value for 'file_filters'.";
+const char kInvalidFileFilterValue[] =
+ "Invalid value for 'file_filters[*]'.";
+const char kInvalidFileHandlers[] =
+ "Invalid value for 'file_handlers'.";
+const char kInvalidFileHandlerExtension[] =
+ "Invalid value for 'file_handlers[*].extensions'.";
+const char kInvalidFileHandlerExtensionElement[] =
+ "Invalid value for 'file_handlers[*].extensions[*]'.";
+const char kInvalidFileHandlerNoTypeOrExtension[] =
+ "'file_handlers[*]' must contain a non-empty 'types' or 'extensions'.";
+const char kInvalidFileHandlerTitle[] =
+ "Invalid value for 'file_handlers[*].title'.";
+const char kInvalidFileHandlerType[] =
+ "Invalid value for 'file_handlers[*].types'.";
+const char kInvalidFileHandlerTypeElement[] =
+ "Invalid value for 'file_handlers[*].types[*]'.";
+const char kInvalidGlob[] =
+ "Invalid value for 'content_scripts[*].*[*]'.";
+const char kInvalidGlobList[] =
+ "Invalid value for 'content_scripts[*].*'.";
+const char kInvalidHomepageURL[] =
+ "Invalid value for homepage url: '[*]'.";
+const char kInvalidIconPath[] =
+ "Invalid value for 'icons[\"*\"]'.";
+const char kInvalidIcons[] =
+ "Invalid value for 'icons'.";
+const char kInvalidImport[] =
+ "Invalid value for 'import'.";
+const char kInvalidImportAndExport[] =
+ "Simultaneous 'import' and 'export' are not allowed.";
+const char kInvalidImportId[] =
+ "Invalid value for 'import[*].id'.";
+const char kInvalidImportVersion[] =
+ "Invalid value for 'import[*].minimum_version'.";
+const char kInvalidIncognitoBehavior[] =
+ "Invalid value for 'incognito'.";
+const char kInvalidInputComponents[] =
+ "Invalid value for 'input_components'";
+const char kInvalidInputComponentDescription[] =
+ "Invalid value for 'input_components[*].description";
+const char kInvalidInputComponentLayoutName[] =
+ "Invalid value for 'input_components[*].layouts[*]";
+const char kInvalidInputComponentName[] =
+ "Invalid value for 'input_components[*].name";
+const char kInvalidInputComponentShortcutKey[] =
+ "Invalid value for 'input_components[*].shortcutKey";
+const char kInvalidInputComponentShortcutKeycode[] =
+ "Invalid value for 'input_components[*].shortcutKey.keyCode";
+const char kInvalidInputComponentType[] =
+ "Invalid value for 'input_components[*].type";
+const char kInvalidIntent[] =
+ "Invalid value for intents[*]";
+const char kInvalidIntentDisposition[] =
+ "Invalid value for intents[*].disposition";
+const char kInvalidIntentDispositionInPlatformApp[] =
+ "Invalid value for intents[*].disposition. Packaged apps cannot specify "
+ "a disposition";
+const char kInvalidIntentHref[] =
+ "Invalid value for intents[*].href";
+const char kInvalidIntentHrefEmpty[] =
+ "Missing value for intents[*].href";
+const char kInvalidIntentHrefInPlatformApp[] =
+ "Invalid value for intents[*].href. Packaged apps cannot specify a "
+ "URL for intents";
+const char kInvalidIntentHrefOldAndNewKey[] =
+ "intents[*]: Key \"*\" is deprecated. Key \"*\" has the same meaning. "
+ "You can not use both.";
+const char kInvalidIntentPageInHostedApp[] =
+ "Invalid value for intents[*].href. Hosted apps must specify an "
+ "absolute URL within app.urls[].";
+const char kInvalidIntents[] =
+ "Invalid value for intents";
+const char kInvalidIntentType[] =
+ "Invalid value for intents[*].type";
+const char kInvalidIntentTypeElement[] =
+ "Invalid value for intents[*].type[*]";
+const char kInvalidIntentTitle[] =
+ "Invalid value for intents[*].title";
+const char kInvalidIsolation[] =
+ "Invalid value for 'app.isolation'.";
+const char kInvalidIsolationValue[] =
+ "Invalid value for 'app.isolation[*]'.";
+const char kInvalidJs[] =
+ "Invalid value for 'content_scripts[*].js[*]'.";
+const char kInvalidJsList[] =
+ "Required value 'content_scripts[*].js' is invalid.";
+const char kInvalidKey[] =
+ "Value 'key' is missing or invalid.";
+const char kInvalidKeyBinding[] =
+ "Invalid value for 'commands[*].*': *.";
+const char kInvalidKeyBindingDescription[] =
+ "Invalid value for 'commands[*].description'.";
+const char kInvalidKeyBindingDictionary[] =
+ "Contents of 'commands[*]' invalid.";
+const char kInvalidKeyBindingMediaKeyWithModifier[] =
+ "Media key cannot have any modifier for 'commands[*].*': *.";
+const char kInvalidKeyBindingMissingPlatform[] =
+ "Could not find key specification for 'command[*].*': Either specify a key "
+ "for '*', or specify a default key.";
+const char kInvalidKeyBindingTooMany[] =
+ "Too many shortcuts specified for 'commands': The maximum is *.";
+const char kInvalidKeyBindingUnknownPlatform[] =
+ "Unknown platform for 'command[*]': *. Valid values are: 'windows', 'mac'"
+ " 'chromeos', 'linux' and 'default'.";
+const char kInvalidKioskEnabled[] =
+ "Invalid value for 'kiosk_enabled'.";
+const char kInvalidLaunchContainer[] =
+ "Invalid value for 'app.launch.container'.";
+const char kInvalidLaunchValue[] =
+ "Invalid value for '*'.";
+const char kInvalidLaunchValueContainer[] =
+ "Invalid container type for '*'.";
+const char kInvalidManifest[] =
+ "Manifest file is invalid.";
+const char kInvalidManifestVersion[] =
+ "Invalid value for 'manifest_version'. Must be an integer greater than "
+ "zero.";
+const char kInvalidManifestVersionOld[] =
+ "The 'manifest_version' key must be present and set to * (without quotes). "
+ "See developer.chrome.com/*/manifestVersion.html for details.";
+const char kInvalidMatch[] =
+ "Invalid value for 'content_scripts[*].matches[*]': *";
+const char kInvalidMatchCount[] =
+ "Invalid value for 'content_scripts[*].matches'. There must be at least "
+ "one match specified.";
+const char kInvalidMatches[] =
+ "Required value 'content_scripts[*].matches' is missing or invalid.";
+const char kInvalidMIMETypes[] =
+ "Invalid value for 'mime_types'";
+const char kInvalidMimeTypesHandler[] =
+ "Invalid value for 'mime_types'.";
+const char kInvalidMinimumChromeVersion[] =
+ "Invalid value for 'minimum_chrome_version'.";
+const char kInvalidName[] =
+ "Required value 'name' is missing or invalid.";
+const char kInvalidNaClModules[] =
+ "Invalid value for 'nacl_modules'.";
+const char kInvalidNaClModulesPath[] =
+ "Invalid value for 'nacl_modules[*].path'.";
+const char kInvalidNaClModulesMIMEType[] =
+ "Invalid value for 'nacl_modules[*].mime_type'.";
+const char kInvalidOAuth2AutoApprove[] =
+ "Invalid value for 'oauth2.auto_approve'. Value must be true or false.";
+const char kInvalidOAuth2ClientId[] =
+ "Invalid value for 'oauth2.client_id'.";
+const char kInvalidOAuth2Scopes[] =
+ "Invalid value for 'oauth2.scopes'.";
+const char kInvalidOfflineEnabled[] =
+ "Invalid value for 'offline_enabled'.";
+const char kInvalidOmniboxKeyword[] =
+ "Invalid value for 'omnibox.keyword'.";
+const char kInvalidOptionsPage[] =
+ "Invalid value for 'options_page'.";
+const char kInvalidOptionsPageExpectUrlInPackage[] =
+ "Invalid value for 'options_page'. Value must be a relative path.";
+const char kInvalidOptionsPageInHostedApp[] =
+ "Invalid value for 'options_page'. Hosted apps must specify an "
+ "absolute URL.";
+const char kInvalidOptionalPermissions[] =
+ "Invalid value for 'optional_permissions'.";
+const char kInvalidPageAction[] =
+ "Invalid value for 'page_action'.";
+const char kInvalidPageActionDefaultTitle[] =
+ "Invalid value for 'default_title'.";
+const char kInvalidPageActionIconPath[] =
+ "Invalid value for 'page_action.default_icon'.";
+const char kInvalidPageActionId[] =
+ "Required value 'id' is missing or invalid.";
+const char kInvalidPageActionName[] =
+ "Invalid value for 'page_action.name'.";
+const char kInvalidPageActionOldAndNewKeys[] =
+ "Key \"*\" is deprecated. Key \"*\" has the same meaning. You can not "
+ "use both.";
+const char kInvalidPageActionPopup[] =
+ "Invalid type for page action popup.";
+const char kInvalidPageActionPopupPath[] =
+ "Invalid value for page action popup path [*].";
+const char kInvalidPageActionsList[] =
+ "Invalid value for 'page_actions'.";
+const char kInvalidPageActionsListSize[] =
+ "Invalid value for 'page_actions'. There can be at most one page action.";
+const char kInvalidPageActionTypeValue[] =
+ "Invalid value for 'page_actions[*].type', expected 'tab' or 'permanent'.";
+const char kInvalidPermission[] =
+ "Invalid value for 'permissions[*]'.";
+const char kInvalidPermissions[] =
+ "Invalid value for 'permissions'.";
+const char kInvalidPermissionScheme[] =
+ "Invalid scheme for 'permissions[*]'.";
+const char kInvalidPlugins[] =
+ "Invalid value for 'plugins'.";
+const char kInvalidPluginsPath[] =
+ "Invalid value for 'plugins[*].path'.";
+const char kInvalidPluginsPublic[] =
+ "Invalid value for 'plugins[*].public'.";
+const char kInvalidRequirement[] =
+ "Invalid value for requirement \"*\"";
+const char kInvalidRequirements[] =
+ "Invalid value for 'requirements'";
+const char kInvalidRunAt[] =
+ "Invalid value for 'content_scripts[*].run_at'.";
+const char kInvalidSandboxedPagesList[] =
+ "Invalid value for 'sandbox.pages'.";
+const char kInvalidSandboxedPage[] =
+ "Invalid value for 'sandbox.pages[*]'.";
+const char kInvalidSandboxedPagesCSP[] =
+ "Invalid value for 'sandbox.content_security_policy'.";
+const char kInvalidScriptBadge[] =
+ "Invalid value for 'script_badge'.";
+const char kInvalidShortName[] =
+ "Invalid value for 'short_name'.";
+const char kInvalidSignature[] =
+ "Value 'signature' is missing or invalid.";
+const char kInvalidSpellcheck[] =
+ "Invalid value for 'spellcheck'.";
+const char kInvalidSpellcheckDictionaryFormat[] =
+ "Invalid value for spellcheck dictionary format.";
+const char kInvalidSpellcheckDictionaryLanguage[] =
+ "Invalid value for spellcheck dictionary language.";
+const char kInvalidSpellcheckDictionaryLocale[] =
+ "Invalid value for spellcheck dictionary locale.";
+const char kInvalidSpellcheckDictionaryPath[] =
+ "Invalid value for spellcheck dictionary path.";
+const char kInvalidSystemIndicator[] =
+ "Invalid value for 'system_indicator'.";
+const char kInvalidTheme[] =
+ "Invalid value for 'theme'.";
+const char kInvalidThemeColors[] =
+ "Invalid value for theme colors - colors must be integers";
+const char kInvalidThemeImages[] =
+ "Invalid value for theme images - images must be strings.";
+const char kInvalidThemeImagesMissing[] =
+ "An image specified in the theme is missing.";
+const char kInvalidThemeTints[] =
+ "Invalid value for theme images - tints must be decimal numbers.";
+const char kInvalidTts[] =
+ "Invalid value for 'tts_engine'.";
+const char kInvalidTtsVoices[] =
+ "Invalid value for 'tts_engine.voices'.";
+const char kInvalidTtsVoicesEventTypes[] =
+ "Invalid value for 'tts_engine.voices[*].event_types'.";
+const char kInvalidTtsVoicesGender[] =
+ "Invalid value for 'tts_engine.voices[*].gender'.";
+const char kInvalidTtsVoicesLang[] =
+ "Invalid value for 'tts_engine.voices[*].lang'.";
+const char kInvalidTtsVoicesVoiceName[] =
+ "Invalid value for 'tts_engine.voices[*].voice_name'.";
+const char kInvalidUpdateURL[] =
+ "Invalid value for update url: '[*]'.";
+const char kInvalidURLHandlers[] =
+ "Invalid value for 'url_handlers'.";
+const char kInvalidURLHandlerPatternElement[] =
+ "Invalid value for 'url_handlers[*]'.";
+const char kInvalidURLHandlerTitle[] =
+ "Invalid value for 'url_handlers[*].title'.";
+const char kInvalidURLHandlerPattern[] =
+ "Invalid value for 'url_handlers[*].matches[*]'.";
+const char kInvalidURLPatternError[] =
+ "Invalid url pattern '*'";
+const char kInvalidVersion[] =
+ "Required value 'version' is missing or invalid. It must be between 1-4 "
+ "dot-separated integers each between 0 and 65536.";
+const char kInvalidWebAccessibleResourcesList[] =
+ "Invalid value for 'web_accessible_resources'.";
+const char kInvalidWebAccessibleResource[] =
+ "Invalid value for 'web_accessible_resources[*]'.";
+const char kInvalidWebURL[] =
+ "Invalid value for 'app.urls[*]': *";
+const char kInvalidWebURLs[] =
+ "Invalid value for 'app.urls'.";
+const char kInvalidZipHash[] =
+ "Required key 'zip_hash' is missing or invalid.";
+const char kInsecureContentSecurityPolicy[] =
+ "Invalid value for 'content_security_policy': Both 'script-src' and"
+ " 'object-src' directives must be specified (either explicitly, or"
+ " implicitly via 'default-src'), and both must whitelist only secure"
+ " resources. You may include any of the following sources: \"'self'\","
+ " \"'unsafe-eval'\", \"http://127.0.0.1\", \"http://localhost\", or any"
+ " \"https://\" or \"chrome-extension://\" origin. For more information,"
+ " see http://developer.chrome.com/extensions/contentSecurityPolicy.html";
+const char kLaunchPathAndExtentAreExclusive[] =
+ "The 'app.launch.local_path' and 'app.urls' keys cannot both be set.";
+const char kLaunchPathAndURLAreExclusive[] =
+ "The 'app.launch.local_path' and 'app.launch.web_url' keys cannot "
+ "both be set.";
+const char kLaunchURLRequired[] =
+ "Either 'app.launch.local_path' or 'app.launch.web_url' is required.";
+const char kLocalesInvalidLocale[] =
+ "Invalid locale file '*': *";
+const char kLocalesMessagesFileMissing[] =
+ "Messages file is missing for locale.";
+const char kLocalesNoDefaultLocaleSpecified[] =
+ "Localization used, but default_locale wasn't specified in the manifest.";
+const char kLocalesNoDefaultMessages[] =
+ "Default locale is defined but default data couldn't be loaded.";
+const char kLocalesNoValidLocaleNamesListed[] =
+ "No valid locale name could be found in _locales directory.";
+const char kLocalesTreeMissing[] =
+ "Default locale was specified, but _locales subtree is missing.";
+const char kManifestParseError[] =
+ "Manifest is not valid JSON.";
+const char kManifestUnreadable[] =
+ "Manifest file is missing or unreadable.";
+const char kMissingFile[] =
+ "At least one js or css file is required for 'content_scripts[*]'.";
+const char kMultipleOverrides[] =
+ "An extension cannot override more than one page.";
+const char kNoPermissionForMIMETypes[] =
+ "The extension is not allowed to use mime_types key.";
+const char kNoWildCardsInPaths[] =
+ "Wildcards are not allowed in extent URL pattern paths.";
+const char kOneUISurfaceOnly[] =
+ "Only one of 'browser_action', 'page_action', and 'app' can be specified.";
+const char kPermissionMustBeOptional[] =
+ "Permission '*' must be specified in the optional section of the manifest.";
+const char kPermissionNotAllowed[] =
+ "Access to permission '*' denied.";
+const char kPermissionNotAllowedInManifest[] =
+ "Permission '*' cannot be specified in the manifest.";
const char kPermissionUnknownOrMalformed[] =
"Permission '*' is unknown or URL pattern is malformed.";
+const char kReservedMessageFound[] =
+ "Reserved key * found in message catalog.";
+const char kScriptBadgeRequiresFlag[] =
+ "The script_badge manifest key is turned off by default. "
+ "You can enable it with the --enable-script-badges command-line flag.";
+const char kScriptBadgeIconIgnored[] =
+ "default_icon specified in script_badge manifest section will not be used.";
+const char kScriptBadgeTitleIgnored[] =
+ "default_title specified in script_badge manifest section will not be "
+ "used.";
const char kUnrecognizedManifestKey[] = "Unrecognized manifest key '*'.";
+const char kWebRequestConflictsWithLazyBackground[] =
+ "The 'webRequest' API cannot be used with event pages.";
+#if defined(OS_CHROMEOS)
+const char kIllegalPlugins[] =
+ "Extensions cannot install plugins on Chrome OS";
+#endif
} // namespace manifest_errors
diff --git a/extensions/common/manifest_constants.h b/extensions/common/manifest_constants.h
index de60410f6a..53fb1ef301 100644
--- a/extensions/common/manifest_constants.h
+++ b/extensions/common/manifest_constants.h
@@ -5,159 +5,428 @@
#ifndef EXTENSIONS_COMMON_MANIFEST_CONSTANTS_H_
#define EXTENSIONS_COMMON_MANIFEST_CONSTANTS_H_
-// Keys used in JSON representation of extensions.
namespace extensions {
+
+// Keys used in JSON representation of extensions.
namespace manifest_keys {
- extern const char kAllFrames[];
- extern const char kAltKey[];
- extern const char kApp[];
- extern const char kBackgroundAllowJsAccess[];
- extern const char kBackgroundPage[];
- extern const char kBackgroundPageLegacy[];
- extern const char kBackgroundPersistent[];
- extern const char kBackgroundScripts[];
- extern const char kBrowserAction[];
- extern const char kBrowseURLs[];
- extern const char kChromeURLOverrides[];
- extern const char kCommands[];
- extern const char kContentPack[];
- extern const char kContentPackSites[];
- extern const char kContentScripts[];
- extern const char kContentSecurityPolicy[];
- extern const char kConvertedFromUserScript[];
- extern const char kCss[];
- extern const char kCtrlKey[];
- extern const char kCurrentLocale[];
- extern const char kDefaultLocale[];
- extern const char kDescription[];
- extern const char kDevToolsPage[];
- extern const char kDisplayInLauncher[];
- extern const char kDisplayInNewTabPage[];
- extern const char kEventName[];
- extern const char kExcludeGlobs[];
- extern const char kExcludeMatches[];
- extern const char kExport[];
- extern const char kExternallyConnectable[];
- extern const char kFileAccessList[];
- extern const char kFileHandlers[];
- extern const char kFileHandlerExtensions[];
- extern const char kFileHandlerTitle[];
- extern const char kFileHandlerTypes[];
- extern const char kFileFilters[];
- extern const char kFileBrowserHandlers[];
- extern const char kMediaGalleriesHandlers[];
- extern const char kHomepageURL[];
- extern const char kIcons[];
- extern const char kId[];
- extern const char kImport[];
- extern const char kIncognito[];
- extern const char kIncludeGlobs[];
- extern const char kInputComponents[];
- extern const char kIntentDisposition[];
- extern const char kIntentHref[];
- extern const char kIntentPath[];
- extern const char kIntents[];
- extern const char kIntentTitle[];
- extern const char kIntentType[];
- extern const char kIsolation[];
- extern const char kJs[];
- extern const char kKey[];
- extern const char kKeycode[];
- extern const char kKioskEnabled[];
- extern const char kLanguage[];
- extern const char kLaunch[];
- extern const char kLaunchContainer[];
- extern const char kLaunchHeight[];
- extern const char kLaunchLocalPath[];
- extern const char kLaunchWebURL[];
- extern const char kLaunchWidth[];
- extern const char kLayouts[];
- extern const char kManifestVersion[];
- extern const char kMatches[];
- extern const char kMIMETypes[];
- extern const char kMimeTypesHandler[];
- extern const char kMinimumChromeVersion[];
- extern const char kMinimumVersion[];
- extern const char kNaClModules[];
- extern const char kNaClModulesMIMEType[];
- extern const char kNaClModulesPath[];
- extern const char kName[];
- extern const char kOAuth2[];
- extern const char kOAuth2AutoApprove[];
- extern const char kOAuth2ClientId[];
- extern const char kOAuth2Scopes[];
- extern const char kOfflineEnabled[];
- extern const char kOmnibox[];
- extern const char kOmniboxKeyword[];
- extern const char kOptionalPermissions[];
- extern const char kOptionsPage[];
- extern const char kPageAction[];
- extern const char kPageActionDefaultIcon[];
- extern const char kPageActionDefaultPopup[];
- extern const char kPageActionDefaultTitle[];
- extern const char kPageActionIcons[];
- extern const char kPageActionId[];
- extern const char kPageActionPopup[];
- extern const char kPageActionPopupPath[];
- extern const char kPageActions[];
- extern const char kPermissions[];
- extern const char kPlatformAppBackground[];
- extern const char kPlatformAppBackgroundPage[];
- extern const char kPlatformAppBackgroundScripts[];
- extern const char kPlatformAppContentSecurityPolicy[];
- extern const char kPlugins[];
- extern const char kPluginsPath[];
- extern const char kPluginsPublic[];
- extern const char kPublicKey[];
- extern const char kResources[];
- extern const char kRequirements[];
- extern const char kRunAt[];
- extern const char kSandboxedPages[];
- extern const char kSandboxedPagesCSP[];
- extern const char kScriptBadge[];
- extern const char kShiftKey[];
- extern const char kShortcutKey[];
- extern const char kShortName[];
- extern const char kSignature[];
- extern const char kSpellcheck[];
- extern const char kSpellcheckDictionaryFormat[];
- extern const char kSpellcheckDictionaryLanguage[];
- extern const char kSpellcheckDictionaryLocale[];
- extern const char kSpellcheckDictionaryPath[];
- extern const char kStorageManagedSchema[];
- extern const char kSuggestedKey[];
- extern const char kSystemIndicator[];
- extern const char kTheme[];
- extern const char kThemeColors[];
- extern const char kThemeDisplayProperties[];
- extern const char kThemeImages[];
- extern const char kThemeTints[];
- extern const char kTtsEngine[];
- extern const char kTtsGenderFemale[];
- extern const char kTtsGenderMale[];
- extern const char kTtsVoices[];
- extern const char kTtsVoicesEventTypeEnd[];
- extern const char kTtsVoicesEventTypeError[];
- extern const char kTtsVoicesEventTypeMarker[];
- extern const char kTtsVoicesEventTypeSentence[];
- extern const char kTtsVoicesEventTypeStart[];
- extern const char kTtsVoicesEventTypeWord[];
- extern const char kTtsVoicesEventTypes[];
- extern const char kTtsVoicesGender[];
- extern const char kTtsVoicesLang[];
- extern const char kTtsVoicesVoiceName[];
- extern const char kType[];
- extern const char kUpdateURL[];
- extern const char kUrlHandlers[];
- extern const char kUrlHandlerTitle[];
- extern const char kVersion[];
- extern const char kWebAccessibleResources[];
- extern const char kWebURLs[];
+
+extern const char kAllFrames[];
+extern const char kAltKey[];
+extern const char kApp[];
+extern const char kBackgroundAllowJsAccess[];
+extern const char kBackgroundPage[];
+extern const char kBackgroundPageLegacy[];
+extern const char kBackgroundPersistent[];
+extern const char kBackgroundScripts[];
+extern const char kBrowserAction[];
+extern const char kBrowseURLs[];
+extern const char kChromeURLOverrides[];
+extern const char kCommands[];
+extern const char kContentPack[];
+extern const char kContentPackSites[];
+extern const char kContentScripts[];
+extern const char kContentSecurityPolicy[];
+extern const char kConvertedFromUserScript[];
+extern const char kCss[];
+extern const char kCtrlKey[];
+extern const char kCurrentLocale[];
+extern const char kDefaultLocale[];
+extern const char kDescription[];
+extern const char kDevToolsPage[];
+extern const char kDisplayInLauncher[];
+extern const char kDisplayInNewTabPage[];
+extern const char kEventName[];
+extern const char kExcludeGlobs[];
+extern const char kExcludeMatches[];
+extern const char kExport[];
+extern const char kExternallyConnectable[];
+extern const char kFileAccessList[];
+extern const char kFileHandlers[];
+extern const char kFileHandlerExtensions[];
+extern const char kFileHandlerTitle[];
+extern const char kFileHandlerTypes[];
+extern const char kFileFilters[];
+extern const char kFileBrowserHandlers[];
+extern const char kMediaGalleriesHandlers[];
+extern const char kHomepageURL[];
+extern const char kIcons[];
+extern const char kId[];
+extern const char kImport[];
+extern const char kIncognito[];
+extern const char kIncludeGlobs[];
+extern const char kInputComponents[];
+extern const char kIntentDisposition[];
+extern const char kIntentHref[];
+extern const char kIntentPath[];
+extern const char kIntents[];
+extern const char kIntentTitle[];
+extern const char kIntentType[];
+extern const char kIsolation[];
+extern const char kJs[];
+extern const char kKey[];
+extern const char kKeycode[];
+extern const char kKioskEnabled[];
+extern const char kLanguage[];
+extern const char kLaunch[];
+extern const char kLaunchContainer[];
+extern const char kLaunchHeight[];
+extern const char kLaunchLocalPath[];
+extern const char kLaunchWebURL[];
+extern const char kLaunchWidth[];
+extern const char kLayouts[];
+extern const char kManifestVersion[];
+extern const char kMatches[];
+extern const char kMIMETypes[];
+extern const char kMimeTypesHandler[];
+extern const char kMinimumChromeVersion[];
+extern const char kMinimumVersion[];
+extern const char kNaClModules[];
+extern const char kNaClModulesMIMEType[];
+extern const char kNaClModulesPath[];
+extern const char kName[];
+extern const char kOAuth2[];
+extern const char kOAuth2AutoApprove[];
+extern const char kOAuth2ClientId[];
+extern const char kOAuth2Scopes[];
+extern const char kOfflineEnabled[];
+extern const char kOmnibox[];
+extern const char kOmniboxKeyword[];
+extern const char kOptionalPermissions[];
+extern const char kOptionsPage[];
+extern const char kPageAction[];
+extern const char kPageActionDefaultIcon[];
+extern const char kPageActionDefaultPopup[];
+extern const char kPageActionDefaultTitle[];
+extern const char kPageActionIcons[];
+extern const char kPageActionId[];
+extern const char kPageActionPopup[];
+extern const char kPageActionPopupPath[];
+extern const char kPageActions[];
+extern const char kPermissions[];
+extern const char kPlatformAppBackground[];
+extern const char kPlatformAppBackgroundPage[];
+extern const char kPlatformAppBackgroundScripts[];
+extern const char kPlatformAppContentSecurityPolicy[];
+extern const char kPlugins[];
+extern const char kPluginsPath[];
+extern const char kPluginsPublic[];
+extern const char kPublicKey[];
+extern const char kResources[];
+extern const char kRequirements[];
+extern const char kRunAt[];
+extern const char kSandboxedPages[];
+extern const char kSandboxedPagesCSP[];
+extern const char kScriptBadge[];
+extern const char kShiftKey[];
+extern const char kShortcutKey[];
+extern const char kShortName[];
+extern const char kSignature[];
+extern const char kSpellcheck[];
+extern const char kSpellcheckDictionaryFormat[];
+extern const char kSpellcheckDictionaryLanguage[];
+extern const char kSpellcheckDictionaryLocale[];
+extern const char kSpellcheckDictionaryPath[];
+extern const char kStorageManagedSchema[];
+extern const char kSuggestedKey[];
+extern const char kSystemIndicator[];
+extern const char kTheme[];
+extern const char kThemeColors[];
+extern const char kThemeDisplayProperties[];
+extern const char kThemeImages[];
+extern const char kThemeTints[];
+extern const char kTtsEngine[];
+extern const char kTtsGenderFemale[];
+extern const char kTtsGenderMale[];
+extern const char kTtsVoices[];
+extern const char kTtsVoicesEventTypeEnd[];
+extern const char kTtsVoicesEventTypeError[];
+extern const char kTtsVoicesEventTypeMarker[];
+extern const char kTtsVoicesEventTypeSentence[];
+extern const char kTtsVoicesEventTypeStart[];
+extern const char kTtsVoicesEventTypeWord[];
+extern const char kTtsVoicesEventTypes[];
+extern const char kTtsVoicesGender[];
+extern const char kTtsVoicesLang[];
+extern const char kTtsVoicesVoiceName[];
+extern const char kType[];
+extern const char kUpdateURL[];
+extern const char kUrlHandlers[];
+extern const char kUrlHandlerTitle[];
+extern const char kVersion[];
+extern const char kWebAccessibleResources[];
+extern const char kWebURLs[];
+
} // namespace manifest_keys
+// Some values expected in manifests.
+namespace manifest_values {
+
+extern const char kBrowserActionCommandEvent[];
+extern const char kIncognitoSplit[];
+extern const char kIncognitoSpanning[];
+extern const char kIntentDispositionWindow[];
+extern const char kIntentDispositionInline[];
+extern const char kIsolatedStorage[];
+extern const char kKeybindingPlatformChromeOs[];
+extern const char kKeybindingPlatformDefault[];
+extern const char kKeybindingPlatformLinux[];
+extern const char kKeybindingPlatformMac[];
+extern const char kKeybindingPlatformWin[];
+extern const char kKeyAlt[];
+extern const char kKeyShift[];
+extern const char kKeyCommand[];
+extern const char kKeyCtrl[];
+extern const char kKeyComma[];
+extern const char kKeyDel[];
+extern const char kKeyDown[];
+extern const char kKeyHome[];
+extern const char kKeyEnd[];
+extern const char kKeyIns[];
+extern const char kKeyLeft[];
+extern const char kKeyMacCtrl[];
+extern const char kKeyMediaNextTrack[];
+extern const char kKeyMediaPlayPause[];
+extern const char kKeyMediaPrevTrack[];
+extern const char kKeyMediaStop[];
+extern const char kKeyPgDwn[];
+extern const char kKeyPgUp[];
+extern const char kKeyPeriod[];
+extern const char kKeyRight[];
+extern const char kKeySeparator[];
+extern const char kKeyTab[];
+extern const char kKeyUp[];
+extern const char kLaunchContainerPanel[];
+extern const char kLaunchContainerTab[];
+extern const char kLaunchContainerWindow[];
+extern const char kPageActionCommandEvent[];
+extern const char kPageActionTypePermanent[];
+extern const char kPageActionTypeTab[];
+extern const char kScriptBadgeCommandEvent[];
+extern const char kRunAtDocumentEnd[];
+extern const char kRunAtDocumentIdle[];
+extern const char kRunAtDocumentStart[];
+
+} // manifest_values
+
+// Error messages returned from extension installation.
namespace manifest_errors {
+
+extern const char kAppsNotEnabled[];
+extern const char kBackgroundPermissionNeeded[];
+extern const char kBackgroundRequiredForPlatformApps[];
+extern const char kCannotAccessChromeUrl[];
+extern const char kCannotAccessExtensionUrl[];
+extern const char kCannotAccessPage[];
+extern const char kCannotChangeExtensionID[];
+extern const char kCannotClaimAllHostsInExtent[];
+extern const char kCannotClaimAllURLsInExtent[];
+extern const char kCannotScriptGallery[];
+extern const char kCannotScriptSigninPage[];
+extern const char kCannotUninstallManagedExtension[];
+extern const char kChromeVersionTooLow[];
+extern const char kDevToolsExperimental[];
+extern const char kDisabledByPolicy[];
+extern const char kExperimentalFlagRequired[];
+extern const char kExpectString[];
+extern const char kInvalidAllFrames[];
+extern const char kInvalidBackground[];
+extern const char kInvalidBackgroundAllowJsAccess[];
+extern const char kInvalidBackgroundCombination[];
+extern const char kInvalidBackgroundScript[];
+extern const char kInvalidBackgroundScripts[];
+extern const char kInvalidBackgroundInHostedApp[];
+extern const char kInvalidBackgroundPersistent[];
+extern const char kInvalidBackgroundPersistentNoPage[];
+extern const char kInvalidBrowserAction[];
+extern const char kInvalidBrowseURL[];
+extern const char kInvalidBrowseURLs[];
+extern const char kInvalidChromeURLOverrides[];
+extern const char kInvalidCommandsKey[];
+extern const char kInvalidContentPack[];
+extern const char kInvalidContentPackSites[];
+extern const char kInvalidContentScript[];
+extern const char kInvalidContentScriptsList[];
+extern const char kInvalidContentSecurityPolicy[];
+extern const char kInvalidCss[];
+extern const char kInvalidCssList[];
+extern const char kInvalidDefaultLocale[];
+extern const char kInvalidDescription[];
+extern const char kInvalidDevToolsPage[];
+extern const char kInvalidDisplayInLauncher[];
+extern const char kInvalidDisplayInNewTabPage[];
+extern const char kInvalidExcludeMatch[];
+extern const char kInvalidExcludeMatches[];
+extern const char kInvalidExport[];
+extern const char kInvalidExportPermissions[];
+extern const char kInvalidExportResources[];
+extern const char kInvalidExportResourcesString[];
+extern const char kInvalidFileAccessList[];
+extern const char kInvalidFileAccessValue[];
+extern const char kInvalidFileBrowserHandler[];
+extern const char kInvalidFileBrowserHandlerMIMETypes[];
+extern const char kInvalidMediaGalleriesHandler[];
+extern const char kInvalidFileFiltersList[];
+extern const char kInvalidFileFilterValue[];
+extern const char kInvalidFileHandlers[];
+extern const char kInvalidFileHandlerExtension[];
+extern const char kInvalidFileHandlerExtensionElement[];
+extern const char kInvalidFileHandlerNoTypeOrExtension[];
+extern const char kInvalidFileHandlerTitle[];
+extern const char kInvalidFileHandlerType[];
+extern const char kInvalidFileHandlerTypeElement[];
+extern const char kInvalidGlob[];
+extern const char kInvalidGlobList[];
+extern const char kInvalidHomepageURL[];
+extern const char kInvalidIconPath[];
+extern const char kInvalidIcons[];
+extern const char kInvalidImport[];
+extern const char kInvalidImportAndExport[];
+extern const char kInvalidImportId[];
+extern const char kInvalidImportVersion[];
+extern const char kInvalidIncognitoBehavior[];
+extern const char kInvalidInputComponents[];
+extern const char kInvalidInputComponentDescription[];
+extern const char kInvalidInputComponentLayoutName[];
+extern const char kInvalidInputComponentName[];
+extern const char kInvalidInputComponentShortcutKey[];
+extern const char kInvalidInputComponentShortcutKeycode[];
+extern const char kInvalidInputComponentType[];
+extern const char kInvalidIntent[];
+extern const char kInvalidIntentDisposition[];
+extern const char kInvalidIntentDispositionInPlatformApp[];
+extern const char kInvalidIntentHref[];
+extern const char kInvalidIntentHrefEmpty[];
+extern const char kInvalidIntentHrefInPlatformApp[];
+extern const char kInvalidIntentHrefOldAndNewKey[];
+extern const char kInvalidIntentPageInHostedApp[];
+extern const char kInvalidIntents[];
+extern const char kInvalidIntentType[];
+extern const char kInvalidIntentTypeElement[];
+extern const char kInvalidIntentTitle[];
+extern const char kInvalidIsolation[];
+extern const char kInvalidIsolationValue[];
+extern const char kInvalidJs[];
+extern const char kInvalidJsList[];
+extern const char kInvalidKey[];
+extern const char kInvalidKeyBinding[];
+extern const char kInvalidKeyBindingDescription[];
+extern const char kInvalidKeyBindingDictionary[];
+extern const char kInvalidKeyBindingMediaKeyWithModifier[];
+extern const char kInvalidKeyBindingMissingPlatform[];
+extern const char kInvalidKeyBindingTooMany[];
+extern const char kInvalidKeyBindingUnknownPlatform[];
+extern const char kInvalidKioskEnabled[];
+extern const char kInvalidLaunchContainer[];
+extern const char kInvalidLaunchValue[];
+extern const char kInvalidLaunchValueContainer[];
+extern const char kInvalidManifest[];
+extern const char kInvalidManifestVersion[];
+extern const char kInvalidManifestVersionOld[];
+extern const char kInvalidMatch[];
+extern const char kInvalidMatchCount[];
+extern const char kInvalidMatches[];
+extern const char kInvalidMIMETypes[];
+extern const char kInvalidMimeTypesHandler[];
+extern const char kInvalidMinimumChromeVersion[];
+extern const char kInvalidNaClModules[];
+extern const char kInvalidNaClModulesMIMEType[];
+extern const char kInvalidNaClModulesPath[];
+extern const char kInvalidName[];
+extern const char kInvalidOAuth2AutoApprove[];
+extern const char kInvalidOAuth2ClientId[];
+extern const char kInvalidOAuth2Scopes[];
+extern const char kInvalidOfflineEnabled[];
+extern const char kInvalidOmniboxKeyword[];
+extern const char kInvalidOptionsPage[];
+extern const char kInvalidOptionsPageExpectUrlInPackage[];
+extern const char kInvalidOptionsPageInHostedApp[];
+extern const char kInvalidPageAction[];
+extern const char kInvalidPageActionDefaultTitle[];
+extern const char kInvalidPageActionIconPath[];
+extern const char kInvalidPageActionId[];
+extern const char kInvalidPageActionName[];
+extern const char kInvalidPageActionOldAndNewKeys[];
+extern const char kInvalidPageActionPopup[];
+extern const char kInvalidPageActionPopupHeight[];
+extern const char kInvalidPageActionPopupPath[];
+extern const char kInvalidPageActionsList[];
+extern const char kInvalidPageActionsListSize[];
+extern const char kInvalidPageActionTypeValue[];
+extern const char kInvalidPermission[];
+extern const char kInvalidPermissions[];
+extern const char kInvalidPermissionScheme[];
+extern const char kInvalidPlugins[];
+extern const char kInvalidPluginsPath[];
+extern const char kInvalidPluginsPublic[];
+extern const char kInvalidRequirement[];
+extern const char kInvalidRequirements[];
+extern const char kInvalidRunAt[];
+extern const char kInvalidSandboxedPagesList[];
+extern const char kInvalidSandboxedPage[];
+extern const char kInvalidSandboxedPagesCSP[];
+extern const char kInvalidScriptBadge[];
+extern const char kInvalidShortName[];
+extern const char kInvalidSignature[];
+extern const char kInvalidSpellcheck[];
+extern const char kInvalidSpellcheckDictionaryFormat[];
+extern const char kInvalidSpellcheckDictionaryLanguage[];
+extern const char kInvalidSpellcheckDictionaryLocale[];
+extern const char kInvalidSpellcheckDictionaryPath[];
+extern const char kInvalidSystemIndicator[];
+extern const char kInvalidTheme[];
+extern const char kInvalidThemeColors[];
+extern const char kInvalidThemeImages[];
+extern const char kInvalidThemeImagesMissing[];
+extern const char kInvalidThemeTints[];
+extern const char kInvalidTts[];
+extern const char kInvalidTtsVoices[];
+extern const char kInvalidTtsVoicesEventTypes[];
+extern const char kInvalidTtsVoicesGender[];
+extern const char kInvalidTtsVoicesLang[];
+extern const char kInvalidTtsVoicesVoiceName[];
+extern const char kInvalidUpdateURL[];
+extern const char kInvalidURLPatternError[];
+extern const char kInvalidURLHandlers[];
+extern const char kInvalidURLHandlerPatternElement[];
+extern const char kInvalidURLHandlerTitle[];
+extern const char kInvalidURLHandlerPattern[];
+extern const char kInvalidVersion[];
+extern const char kInvalidWebAccessibleResourcesList[];
+extern const char kInvalidWebAccessibleResource[];
+extern const char kInvalidWebURL[];
+extern const char kInvalidWebURLs[];
+extern const char kInvalidZipHash[];
+extern const char kInsecureContentSecurityPolicy[];
+extern const char kLaunchPathAndExtentAreExclusive[];
+extern const char kLaunchPathAndURLAreExclusive[];
+extern const char kLaunchURLRequired[];
+extern const char kLocalesInvalidLocale[];
+extern const char kLocalesMessagesFileMissing[];
+extern const char kLocalesNoDefaultLocaleSpecified[];
+extern const char kLocalesNoDefaultMessages[];
+extern const char kLocalesNoValidLocaleNamesListed[];
+extern const char kLocalesTreeMissing[];
+extern const char kManifestParseError[];
+extern const char kManifestUnreadable[];
+extern const char kMissingFile[];
+extern const char kMultipleOverrides[];
+extern const char kNoPermissionForMIMETypes[];
+extern const char kNoWildCardsInPaths[];
+extern const char kOneUISurfaceOnly[];
+extern const char kPermissionMustBeOptional[];
+extern const char kPermissionNotAllowed[];
+extern const char kPermissionNotAllowedInManifest[];
extern const char kPermissionUnknownOrMalformed[];
+extern const char kReservedMessageFound[];
extern const char kUnrecognizedManifestKey[];
+extern const char kScriptBadgeRequiresFlag[];
+extern const char kScriptBadgeIconIgnored[];
+extern const char kScriptBadgeTitleIgnored[];
+extern const char kWebRequestConflictsWithLazyBackground[];
+#if defined(OS_CHROMEOS)
+extern const char kIllegalPlugins[];
+#endif
+
} // namespace manifest_errors
} // namespace extensions
diff --git a/extensions/common/url_pattern.cc b/extensions/common/url_pattern.cc
index 93b3270aa1..219bf0fa64 100644
--- a/extensions/common/url_pattern.cc
+++ b/extensions/common/url_pattern.cc
@@ -20,7 +20,7 @@ namespace {
// TODO(aa): What about more obscure schemes like data: and javascript: ?
// Note: keep this array in sync with kValidSchemeMasks.
const char* kValidSchemes[] = {
- chrome::kHttpScheme,
+ content::kHttpScheme,
content::kHttpsScheme,
chrome::kFileScheme,
chrome::kFtpScheme,
@@ -360,7 +360,7 @@ bool URLPattern::MatchesScheme(const std::string& test) const {
}
bool URLPattern::MatchesHost(const std::string& host) const {
- std::string test(chrome::kHttpScheme);
+ std::string test(content::kHttpScheme);
test += content::kStandardSchemeSeparator;
test += host;
test += "/";