| // Copyright 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // This features file defines extension APIs implemented under src/chrome. |
| // See chrome/common/extensions/api/_features.md to understand this file, as |
| // well as feature.h, simple_feature.h, and feature_provider.h. |
| // |
| // Note that specifying "web_page", "blessed_web_page", or "all" as a context |
| // type will require manually updating chrome/renderer/resources/dispatcher.cc. |
| |
| { |
| "accessibilityFeatures": [{ |
| "dependencies": ["permission:accessibilityFeatures.modify"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "dependencies": ["permission:accessibilityFeatures.read"], |
| "contexts": ["blessed_extension"] |
| }], |
| "accessibilityPrivate": { |
| "dependencies": ["permission:accessibilityPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "activityLogPrivate": { |
| "dependencies": ["permission:activityLogPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "app": { |
| "blacklist": [ |
| "2FC374607C2DF285634B67C64A2E356C607091C3", // Quickoffice |
| "3727DD3E564B6055387425027AD74C58784ACC15", // Quickoffice internal |
| "12E618C3C6E97495AAECF2AC12DEB082353241C6", // QO component extension |
| "06BE211D5F014BAB34BC22D9DDA09C63A81D828E", // Official xkb extension |
| "F94EE6AB36D6C6588670B2B01EB65212D9C64E33", // Open source xkb extension |
| "B9EF10DDFEA11EF77873CC5009809E5037FC4C7A" // Google input tools |
| ], |
| "channel": "stable", |
| "extension_types": ["hosted_app", "extension", "legacy_packaged_app"], |
| "contexts": [ |
| "blessed_extension", |
| "unblessed_extension", |
| "content_script", |
| "web_page", |
| "blessed_web_page" |
| ], |
| // Any webpage can use the app API. |
| "matches": ["<all_urls>"] |
| }, |
| "app.getDetails": { |
| "contexts": [ |
| "blessed_extension", |
| "unblessed_extension", |
| "content_script", |
| "blessed_web_page", |
| "web_page" |
| ] |
| }, |
| "app.getIsInstalled": { |
| "contexts": [ |
| "blessed_extension", |
| "unblessed_extension", |
| "content_script", |
| "blessed_web_page", |
| "web_page" |
| ] |
| }, |
| "app.installState": { |
| "contexts": [ |
| "blessed_extension", |
| "unblessed_extension", |
| "content_script", |
| "blessed_web_page", |
| "web_page" |
| ] |
| }, |
| "app.runningState": { |
| "contexts": [ |
| "blessed_extension", |
| "unblessed_extension", |
| "content_script", |
| "blessed_web_page", |
| "web_page" |
| ] |
| }, |
| "appviewTag": { |
| "internal": true, |
| "dependencies": ["permission:appview"], |
| "contexts": ["blessed_extension"] |
| }, |
| "autofillPrivate": [{ |
| "dependencies": ["permission:autofillPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "trunk", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*", |
| "chrome://settings-frame/*" |
| ] |
| }], |
| "automationInternal": { |
| "internal": true, |
| "dependencies": ["manifest:automation"], |
| "contexts": ["blessed_extension"] |
| }, |
| "automation": { |
| "dependencies": ["manifest:automation"], |
| "contexts": ["blessed_extension"] |
| }, |
| "autotestPrivate": { |
| "dependencies": ["permission:autotestPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "bookmarkManagerPrivate": [{ |
| "dependencies": ["permission:bookmarkManagerPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://bookmarks/*" |
| ] |
| }], |
| "bookmarks": [{ |
| "dependencies": ["permission:bookmarks"], |
| "contexts": ["blessed_extension"], |
| "default_parent": true |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://bookmarks/*" |
| ] |
| }], |
| "bookmarks.export": { |
| "whitelist": [ |
| "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2", // http://crbug.com/312900 |
| "D57DE394F36DC1C3220E7604C575D29C51A6C495", // http://crbug.com/319444 |
| "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9" // http://crbug.com/371562 |
| ] |
| }, |
| "bookmarks.import": { |
| "whitelist": [ |
| "D5736E4B5CF695CB93A2FB57E4FDC6E5AFAB6FE2", // http://crbug.com/312900 |
| "D57DE394F36DC1C3220E7604C575D29C51A6C495", // http://crbug.com/319444 |
| "3F65507A3B39259B38C8173C6FFA3D12DF64CCE9" // http://crbug.com/371562 |
| ] |
| }, |
| "brailleDisplayPrivate": { |
| "dependencies": ["permission:brailleDisplayPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "browser": { |
| "dependencies": ["permission:browser"], |
| "contexts": ["blessed_extension"] |
| }, |
| "browserAction": { |
| "dependencies": ["manifest:browser_action"], |
| "contexts": ["blessed_extension"] |
| }, |
| // This API is whitelisted on stable and should not be enabled for a wider |
| // audience without resolving security issues raised in API proposal and |
| // review (https://codereview.chromium.org/25305002). |
| "browserAction.openPopup": [{ |
| "channel": "dev", |
| "dependencies": ["manifest:browser_action"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "dependencies": ["manifest:browser_action"], |
| "whitelist": [ |
| "63ED55E43214C211F82122ED56407FF1A807F2A3", // Dev |
| // The extensions below here only use openPopup on a user action, |
| // so are safe, and can be removed when the whitelist on that |
| // capability is lifted. See crbug.com/436489 for context. |
| "A4577D8C2AF4CF26F40CBCA83FFA4251D6F6C8F8", // http://crbug.com/497301 |
| "A8208CCC87F8261AFAEB6B85D5E8D47372DDEA6B", // http://crbug.com/497301 |
| "EFCF5358672FEE04789FD2EC3638A67ADEDB6C8C" // http://crbug.com/514696 |
| ], |
| "contexts": ["blessed_extension"] |
| }], |
| "browsingData": { |
| "dependencies": ["permission:browsingData"], |
| "contexts": ["blessed_extension"] |
| }, |
| "cast.channel": { |
| "dependencies": ["permission:cast"], |
| "contexts": ["blessed_extension"] |
| }, |
| "cast.streaming.rtpStream": { |
| "dependencies": ["permission:cast.streaming"], |
| "contexts": ["blessed_extension"] |
| }, |
| "cast.streaming.receiverSession": { |
| "dependencies": ["permission:cast.streaming"], |
| "contexts": ["blessed_extension"] |
| }, |
| "cast.streaming.session": { |
| "dependencies": ["permission:cast.streaming"], |
| "contexts": ["blessed_extension"] |
| }, |
| "cast.streaming.udpTransport": { |
| "dependencies": ["permission:cast.streaming"], |
| "contexts": ["blessed_extension"] |
| }, |
| "certificateProvider": { |
| "dependencies": ["permission:certificateProvider"], |
| "contexts": ["blessed_extension"] |
| }, |
| "certificateProviderInternal": { |
| "internal": true, |
| "dependencies": ["permission:certificateProvider"], |
| "contexts": ["blessed_extension"] |
| }, |
| "chromeosInfoPrivate": [{ |
| "dependencies": ["permission:chromeosInfoPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://version/*" |
| ], |
| "platforms": ["chromeos"] |
| }], |
| "chromeWebViewInternal": [{ |
| "internal": true, |
| "dependencies": ["permission:webview"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "internal": true, |
| "channel": "dev", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://chrome-signin/*", |
| "chrome://media-router/*", |
| "chrome://oobe/*" |
| ] |
| }], |
| "cloudPrintPrivate": { |
| "dependencies": ["permission:cloudPrintPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "commandLinePrivate": { |
| "dependencies": ["permission:commandLinePrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "commands": { |
| "dependencies": ["manifest:commands"], |
| "contexts": ["blessed_extension"] |
| }, |
| "contentSettings": { |
| "dependencies": ["permission:contentSettings"], |
| "contexts": ["blessed_extension"] |
| }, |
| "contextMenus": { |
| "dependencies": ["permission:contextMenus"], |
| "contexts": ["blessed_extension"] |
| }, |
| "contextMenusInternal": { |
| "internal": true, |
| "channel": "stable", |
| "contexts": ["blessed_extension"] |
| }, |
| "cookies": { |
| "dependencies": ["permission:cookies"], |
| "contexts": ["blessed_extension"] |
| }, |
| "cryptotokenPrivate": { |
| "dependencies": ["permission:cryptotokenPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "dashboardPrivate": [{ |
| "channel": "stable", |
| "contexts": ["blessed_web_page", "web_page"], |
| "matches": ["https://chrome.google.com/*"] |
| }, { |
| "channel": "stable", |
| "contexts": ["blessed_extension"], |
| "whitelist": [ |
| "B44D08FD98F1523ED5837D78D0A606EA9D6206E5" // Web Store |
| ] |
| }], |
| "dataReductionProxy": { |
| "dependencies": ["permission:dataReductionProxy"], |
| "contexts": ["blessed_extension"] |
| }, |
| "debugger": { |
| "dependencies": ["permission:debugger"], |
| "contexts": ["blessed_extension"] |
| }, |
| "declarativeContent": { |
| "dependencies": ["permission:declarativeContent"], |
| "contexts": ["blessed_extension"] |
| }, |
| "desktopCapture": [{ |
| "dependencies": ["permission:desktopCapture"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "dependencies": ["permission:desktopCapturePrivate"], |
| "whitelist": [ |
| "63ED55E43214C211F82122ED56407FF1A807F2A3", // Media Router Dev |
| "226CF815E39A363090A1E547D53063472B8279FA" // Media Router Stable |
| ], |
| "contexts": ["blessed_extension"] |
| }], |
| "developerPrivate": [{ |
| "dependencies": ["permission:developerPrivate", "permission:management"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://extensions/*", |
| "chrome://extensions-frame/*", |
| "chrome://chrome/extensions/*" |
| ] |
| }], |
| // All devtools APIs are implemented by hand, so don't compile them. |
| "devtools.inspectedWindow": { |
| "nocompile": true, |
| "dependencies": ["manifest:devtools_page"], |
| "contexts": ["blessed_extension"] |
| }, |
| "devtools.network": { |
| "nocompile": true, |
| "dependencies": ["manifest:devtools_page"], |
| "contexts": ["blessed_extension"] |
| }, |
| "devtools.panels": { |
| "nocompile": true, |
| "dependencies": ["manifest:devtools_page"], |
| "contexts": ["blessed_extension"] |
| }, |
| "dial": { |
| "dependencies": ["permission:dial"], |
| "contexts": ["blessed_extension"] |
| }, |
| "downloads": { |
| "dependencies": ["permission:downloads"], |
| "contexts": ["blessed_extension"] |
| }, |
| "downloadsInternal": { |
| "internal": true, |
| "channel": "stable", |
| "contexts": ["blessed_extension"] |
| }, |
| "easyUnlockPrivate": { |
| "dependencies": ["permission:easyUnlockPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "echoPrivate": { |
| "dependencies": ["permission:echoPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "enterprise.deviceAttributes": { |
| "dependencies": ["permission:enterprise.deviceAttributes"], |
| "contexts": ["blessed_extension"] |
| }, |
| "enterprise.platformKeys": { |
| "dependencies": ["permission:enterprise.platformKeys"], |
| "contexts": ["blessed_extension"] |
| }, |
| "enterprise.platformKeysInternal": { |
| "dependencies": ["permission:enterprise.platformKeys"], |
| "internal": true, |
| "contexts": ["blessed_extension"] |
| }, |
| "enterprise.platformKeysPrivate": { |
| "dependencies": ["permission:enterprise.platformKeysPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "experienceSamplingPrivate": { |
| "dependencies": ["permission:experienceSamplingPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "experimental.devtools.audits": { |
| "dependencies": ["permission:experimental", "manifest:devtools_page"], |
| "contexts": ["blessed_extension"] |
| }, |
| "experimental.devtools.console": { |
| "dependencies": ["permission:experimental", "manifest:devtools_page"], |
| "contexts": ["blessed_extension"] |
| }, |
| "extension": { |
| "channel": "stable", |
| "extension_types": ["extension", "legacy_packaged_app"], |
| "contexts": ["blessed_extension"] |
| }, |
| "extension.getURL": { |
| "contexts": ["blessed_extension", "unblessed_extension", "content_script"] |
| }, |
| "extension.getViews": [ |
| { |
| "channel": "stable", |
| "contexts": ["blessed_extension"], |
| "extension_types": ["extension", "legacy_packaged_app"] |
| }, |
| { |
| // TODO(yoz): Eliminate this usage. |
| "channel": "stable", |
| "contexts": ["blessed_extension"], |
| "extension_types": ["platform_app"], |
| "whitelist": [ |
| "A948368FC53BE437A55FEB414106E207925482F5" // File manager |
| ] |
| } |
| ], |
| "extension.inIncognitoContext": { |
| "contexts": ["blessed_extension", "unblessed_extension", "content_script"] |
| }, |
| "extension.lastError": { |
| "contexts": ["blessed_extension", "unblessed_extension", "content_script"] |
| }, |
| "extension.onRequest": { |
| "contexts": ["blessed_extension", "unblessed_extension", "content_script"] |
| }, |
| "extension.sendRequest": { |
| "contexts": ["blessed_extension", "unblessed_extension", "content_script"] |
| }, |
| "extensionOptionsInternal": [{ |
| "internal": true, |
| "contexts": ["blessed_extension"], |
| "dependencies": ["permission:embeddedExtensionOptions"] |
| }, { |
| "internal": true, |
| "channel": "trunk", |
| "contexts": ["webui"], |
| "matches": ["chrome://extensions-frame/*", "chrome://extensions/*"] |
| }], |
| // This is not a real API, only here for documentation purposes. |
| // See http://crbug.com/275944 for background. |
| "extensionsManifestTypes": { |
| "internal": true, |
| "channel": "stable", |
| "contexts": ["blessed_extension"] |
| }, |
| "feedbackPrivate": { |
| "dependencies": ["permission:feedbackPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fileBrowserHandler": { |
| "dependencies": ["permission:fileBrowserHandler"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fileBrowserHandlerInternal": { |
| "internal": true, |
| "dependencies": ["permission:fileBrowserHandler"], |
| "contexts": ["blessed_extension"] |
| }, |
| "screenlockPrivate": { |
| "dependencies": ["permission:screenlockPrivate"], |
| "extension_types": ["platform_app"], |
| "contexts": ["blessed_extension", "unblessed_extension"] |
| }, |
| "fileManagerPrivate": { |
| "dependencies": ["permission:fileManagerPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fileManagerPrivateInternal": { |
| "internal": true, |
| "dependencies": ["permission:fileManagerPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fileSystem": { |
| "dependencies": ["permission:fileSystem"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fileSystemProvider": { |
| "dependencies": ["permission:fileSystemProvider"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fileSystemProviderInternal": { |
| "internal": true, |
| "dependencies": ["permission:fileSystemProvider"], |
| "contexts": ["blessed_extension"] |
| }, |
| "firstRunPrivate": { |
| "dependencies": ["permission:firstRunPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "fontSettings": { |
| "dependencies": ["permission:fontSettings"], |
| "contexts": ["blessed_extension"] |
| }, |
| "gcdPrivate": { |
| "dependencies": ["permission:gcdPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "gcm": { |
| "dependencies": ["permission:gcm"], |
| "contexts": ["blessed_extension"] |
| }, |
| "history": { |
| "dependencies": ["permission:history"], |
| "contexts": ["blessed_extension"] |
| }, |
| "hotwordPrivate": { |
| "dependencies": ["permission:hotwordPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "i18n": { |
| "channel": "stable", |
| "extension_types": ["extension", "legacy_packaged_app", "platform_app"], |
| "contexts": ["blessed_extension", "unblessed_extension", "content_script"] |
| }, |
| "identity": { |
| "dependencies": ["permission:identity"], |
| "contexts": ["blessed_extension"] |
| }, |
| "identity.getAccounts": { |
| "channel": "dev", |
| "dependencies": ["permission:identity"], |
| "contexts": ["blessed_extension"] |
| }, |
| "identityPrivate": { |
| "dependencies": ["permission:identityPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "idltest": { |
| "dependencies": ["permission:idltest"], |
| "contexts": ["blessed_extension"] |
| }, |
| "inlineInstallPrivate": { |
| "dependencies": ["permission:inlineInstallPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "input.ime": { |
| "dependencies": ["permission:input"], |
| "contexts": ["blessed_extension"] |
| }, |
| "inputMethodPrivate": [{ |
| "dependencies": ["permission:inputMethodPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*" |
| ] |
| }], |
| "instanceID": { |
| "dependencies": ["permission:gcm"], |
| "contexts": ["blessed_extension"] |
| }, |
| "languageSettingsPrivate": [{ |
| "dependencies": ["permission:languageSettingsPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*", |
| "chrome://settings-frame/*" |
| ] |
| }], |
| "launcherPage": { |
| "dependencies": ["manifest:launcher_page"], |
| "contexts": ["blessed_extension"] |
| }, |
| "launcherSearchProvider": { |
| "dependencies": ["permission:launcherSearchProvider"], |
| "contexts": ["blessed_extension"] |
| }, |
| "logPrivate": { |
| "dependencies": ["permission:logPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webcamPrivate": { |
| "dependencies": ["permission:webcamPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| // This is not a real API, only here for documentation purposes. |
| // See http://crbug.com/275944 for background. |
| "manifestTypes": { |
| "internal": true, |
| "channel": "stable", |
| "contexts": ["blessed_extension"] |
| }, |
| "mediaGalleries": { |
| "dependencies": ["permission:mediaGalleries"], |
| "contexts": ["blessed_extension"] |
| }, |
| "mediaPlayerPrivate": { |
| "dependencies": ["permission:mediaPlayerPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "mdns": { |
| "dependencies": ["permission:mdns"], |
| "contexts": ["blessed_extension"] |
| }, |
| "mimeHandlerViewGuestInternal": { |
| "internal": true, |
| "contexts": "all", |
| "channel": "stable", |
| "matches": ["<all_urls>"] |
| }, |
| "musicManagerPrivate": { |
| "dependencies": ["permission:musicManagerPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "notifications": { |
| "dependencies": ["permission:notifications"], |
| "contexts": ["blessed_extension"] |
| }, |
| "omnibox": { |
| "dependencies": ["manifest:omnibox"], |
| "contexts": ["blessed_extension"] |
| }, |
| "pageAction": { |
| "dependencies": ["manifest:page_action"], |
| "contexts": ["blessed_extension"] |
| }, |
| "pageCapture": { |
| "dependencies": ["permission:pageCapture"], |
| "contexts": ["blessed_extension"] |
| }, |
| "passwordsPrivate": [{ |
| "dependencies": ["permission:passwordsPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "trunk", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*", |
| "chrome://settings-frame/*" |
| ] |
| }], |
| "permissions": { |
| "channel": "stable", |
| "extension_types": ["extension", "legacy_packaged_app", "platform_app"], |
| "contexts": ["blessed_extension"] |
| }, |
| "platformKeys": { |
| "dependencies": ["permission:platformKeys"], |
| "contexts": ["blessed_extension"] |
| }, |
| "platformKeysInternal": [{ |
| "dependencies": ["permission:platformKeys"], |
| "internal": true, |
| "contexts": ["blessed_extension"] |
| },{ |
| "dependencies": ["permission:enterprise.platformKeys"], |
| "internal": true, |
| "contexts": ["blessed_extension"] |
| }], |
| "preferencesPrivate": { |
| "dependencies": ["permission:preferencesPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "privacy": { |
| "dependencies": ["permission:privacy"], |
| "contexts": ["blessed_extension"] |
| }, |
| "processes": { |
| "dependencies": ["permission:processes"], |
| "contexts": ["blessed_extension"] |
| }, |
| "proxy": { |
| "dependencies": ["permission:proxy"], |
| "contexts": ["blessed_extension"] |
| }, |
| "imageWriterPrivate": { |
| "dependencies": ["permission:imageWriterPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "quickUnlockPrivate": { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*", |
| "chrome://settings-frame/*" |
| ], |
| "platforms": ["chromeos"] |
| }, |
| "resourcesPrivate": [{ |
| "dependencies": ["permission:resourcesPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://print/*" |
| ] |
| }], |
| "rtcPrivate": { |
| "dependencies": ["permission:rtcPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "sessions": { |
| "dependencies": ["permission:sessions"], |
| "contexts": ["blessed_extension"] |
| }, |
| "settingsPrivate": [{ |
| "dependencies": ["permission:settingsPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "trunk", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*", |
| "chrome://settings-frame/*" |
| ] |
| }], |
| "signedInDevices": { |
| "dependencies": ["permission:signedInDevices"], |
| "contexts": ["blessed_extension"] |
| }, |
| "streamsPrivate": { |
| "dependencies": ["permission:streamsPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "syncFileSystem": { |
| "dependencies": ["permission:syncFileSystem"], |
| "contexts": ["blessed_extension"] |
| }, |
| "systemIndicator": { |
| "dependencies": ["manifest:system_indicator"], |
| "contexts": ["blessed_extension"] |
| }, |
| "systemPrivate": { |
| "dependencies": ["permission:systemPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "tabCapture": { |
| "dependencies": ["permission:tabCapture"], |
| "contexts": ["blessed_extension"] |
| }, |
| "tabs": [{ |
| "channel": "stable", |
| "extension_types": ["extension", "legacy_packaged_app"], |
| "contexts": ["blessed_extension", "extension_service_worker"] |
| }, { |
| "channel": "stable", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://bookmarks/*" |
| ] |
| }], |
| "terminalPrivate": { |
| "dependencies": ["permission:terminalPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "topSites": { |
| "dependencies": ["permission:topSites"], |
| "contexts": ["blessed_extension"] |
| }, |
| "tts": { |
| "dependencies": ["permission:tts"], |
| "contexts": ["blessed_extension"] |
| }, |
| "ttsEngine": { |
| "dependencies": ["permission:ttsEngine"], |
| "contexts": ["blessed_extension"] |
| }, |
| "usersPrivate": [{ |
| "dependencies": ["permission:usersPrivate"], |
| "contexts": ["blessed_extension"] |
| }, { |
| "channel": "trunk", |
| "contexts": ["webui"], |
| "matches": [ |
| "chrome://md-settings/*", |
| "chrome://settings/*", |
| "chrome://settings-frame/*" |
| ] |
| }], |
| "virtualKeyboardPrivate": { |
| "dependencies": ["permission:virtualKeyboardPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "wallpaper": { |
| "dependencies": ["permission:wallpaper"], |
| "contexts": ["blessed_extension"] |
| }, |
| "wallpaperPrivate": { |
| "dependencies": ["permission:wallpaperPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webNavigation": { |
| "dependencies": ["permission:webNavigation"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webrtcAudioPrivate": { |
| "dependencies": ["permission:webrtcAudioPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webrtcDesktopCapturePrivate": { |
| "dependencies": ["permission:webrtcDesktopCapturePrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webrtcLoggingPrivate": { |
| "dependencies": ["permission:webrtcLoggingPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webstore": { |
| // Hosted apps can use the webstore API from within a blessed context. |
| "channel": "stable", |
| // Set extension_types to 'all' to prevent webstore from being filtered. |
| // Technically, webstore is not in apps or extensions, but it is currently |
| // displayed on /extensions/webstore and /apps/webstore. The "contexts" |
| // restriction effectively restricts this to hosted apps and webpages. |
| "extension_types": "all", |
| "contexts": ["blessed_web_page", "web_page"], |
| // Any webpage can use the webstore API. |
| "matches": ["<all_urls>"] |
| }, |
| "webstorePrivate": { |
| "dependencies": ["permission:webstorePrivate"], |
| // NOTE: even though this is only used by the webstore hosted app, which |
| // normally would mean blessed_web_page, component hosted apps are actually |
| // given the blessed_extension denomination. Confusing. |
| "contexts": ["blessed_extension"] |
| }, |
| "webstoreWidgetPrivate": { |
| "dependencies": ["permission:webstoreWidgetPrivate"], |
| "contexts": ["blessed_extension"] |
| }, |
| "webviewTag": { |
| "internal": true, |
| "channel": "stable", |
| "dependencies": ["permission:webview"], |
| "contexts": ["blessed_extension"] |
| }, |
| "windows": { |
| "dependencies": ["api:tabs"], |
| "contexts": ["blessed_extension"] |
| } |
| } |