| Index: chrome/common/extensions/manifest_url_handler.h
|
| diff --git a/chrome/common/extensions/manifest_url_handler.h b/chrome/common/extensions/manifest_url_handler.h
|
| index aa65e77a90fb31fcf5dd76b3e1afcc2a8ebe8afa..befb5108d03718fd7db2f4b3c31e0e74010c96fe 100644
|
| --- a/chrome/common/extensions/manifest_url_handler.h
|
| +++ b/chrome/common/extensions/manifest_url_handler.h
|
| @@ -27,6 +27,23 @@ struct ManifestURL : public Extension::ManifestData {
|
| static const GURL GetHomepageURL(const Extension* extension);
|
| };
|
|
|
| +// A structure to hold the chrome URL overrides that may be specified
|
| +// in the manifest of an extension.
|
| +struct URLOverrides : public Extension::ManifestData {
|
| + typedef std::map<const std::string, GURL> URLOverrideMap;
|
| +
|
| + // Define out of line constructor/destructor to please Clang.
|
| + URLOverrides();
|
| + virtual ~URLOverrides();
|
| +
|
| + static const URLOverrideMap&
|
| + GetChromeURLOverrides(const Extension* extension);
|
| +
|
| + // A map of chrome:// hostnames (newtab, downloads, etc.) to Extension URLs
|
| + // which override the handling of those URLs. (see ExtensionOverrideUI).
|
| + URLOverrideMap chrome_url_overrides_;
|
| +};
|
| +
|
| // Parses the "devtools_page" manifest key.
|
| class DevToolsPageHandler : public ManifestHandler {
|
| public:
|
| @@ -49,6 +66,17 @@ class HomepageURLHandler : public ManifestHandler {
|
| string16* error) OVERRIDE;
|
| };
|
|
|
| +// Parses the "chrome_url_overrides" manifest key.
|
| +class URLOverridesHandler : public ManifestHandler {
|
| + public:
|
| + URLOverridesHandler();
|
| + virtual ~URLOverridesHandler();
|
| +
|
| + virtual bool Parse(const base::Value* value,
|
| + Extension* extension,
|
| + string16* error) OVERRIDE;
|
| +};
|
| +
|
| } // namespace extensions
|
|
|
| #endif // CHROME_COMMON_EXTENSIONS_MANIFEST_URL_HANDLER_H_
|
|
|