Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4694)

Unified Diff: chrome/common/extensions/api/_api_features.json

Issue 15091002: Lazily load API schemas from resource files and convert all APIs to features (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: comments Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/common/extensions/api/api.gyp » ('j') | chrome/common/extensions/api/api.gyp » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/common/extensions/api/_api_features.json
diff --git a/chrome/common/extensions/api/_api_features.json b/chrome/common/extensions/api/_api_features.json
index f159abfdcdef424d75350d680bb444b45d10afbe..69922fd92af6ed9ed8844c97ab8200cf35f4a213 100644
--- a/chrome/common/extensions/api/_api_features.json
+++ b/chrome/common/extensions/api/_api_features.json
@@ -14,12 +14,10 @@
]
},
"app.runtime": {
- "channel": "stable",
"contexts": ["blessed_extension"],
"dependencies": ["permission:app.runtime"]
},
"app.window": {
- "channel": "stable",
"contexts": ["blessed_extension"],
"dependencies": ["permission:app.window"]
},
@@ -29,20 +27,17 @@
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"bookmarks": {
- "channel": "stable",
Yoyo Zhou 2013/05/28 23:49:38 Why remove this?
not at google - send to devlin 2013/05/28 23:53:58 It depends on the bookmarks permission, which has
"dependencies": ["permission:bookmarks"],
"contexts": ["blessed_extension"]
},
"bookmarks.export": {
- "channel": "stable",
+ "parent": "bookmarks",
Matt Perry 2013/05/24 19:53:23 Can we get rid of the "parent" key and just infer
not at google - send to devlin 2013/05/24 20:07:59 the canonical example is "app". we need _some_ con
Yoyo Zhou 2013/05/28 23:49:38 At least it seems to me the common case is that th
"extension_types": ["extension"],
- "contexts": ["blessed_extension"],
"location": "component"
},
"bookmarks.import": {
- "channel": "stable",
+ "parent": "bookmarks",
"extension_types": ["extension"],
- "contexts": ["blessed_extension"],
"location": "component"
},
"downloadsInternal": {
@@ -69,53 +64,43 @@
"contexts": ["blessed_extension"]
},
"runtime.connect": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.getManifest": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.getURL": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.id": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.lastError": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.onConnect": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.onMessage": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.reload": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.requestUpdateCheck": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"runtime.sendMessage": {
- "channel": "stable",
- "extension_types": ["extension", "packaged_app", "platform_app"],
+ "parent": "runtime",
"contexts": ["blessed_extension", "unblessed_extension", "content_script"]
},
"webRequestInternal": {
@@ -130,5 +115,393 @@
"contexts": ["blessed_extension", "web_page"],
// Any webpage can use the webstore API.
"matches": ["http://*/*", "https://*/*"]
+ },
+
+ // NEW APIS BEGIN HERE
Yoyo Zhou 2013/05/28 23:49:38 If we're going to want to have these all in alphab
not at google - send to devlin 2013/05/28 23:53:58 i think for easier auditing.
+ "alarms": {
+ "dependencies": ["permission:alarms"],
+ "contexts": ["blessed_extension"]
+ },
+ "autotestPrivate": {
+ "dependencies": ["permission:autotestPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "bluetooth": {
+ "dependencies": ["permission:bluetooth"],
+ "contexts": ["blessed_extension"]
+ },
+ "bookmarkManagerPrivate": {
+ "dependencies": ["permission:bookmarkManagerPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "browserAction": {
+ "dependencies": ["manifest:browser_action"],
+ "contexts": ["blessed_extension"]
+ },
+ "browsingData": {
+ "dependencies": ["permission:browsingData"],
+ "contexts": ["blessed_extension"]
+ },
+ "chromeosInfoPrivate": {
+ "dependencies": ["permission:chromeosInfoPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "cloudPrintPrivate": {
+ "dependencies": ["permission:cloudPrintPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "commands": {
+ "dependencies": ["manifest:commands"],
+ "contexts": ["blessed_extension"]
+ },
+ "contentSettings": {
+ "dependencies": ["permission:contentSettings"],
+ "contexts": ["blessed_extension"]
+ },
+ "contextMenus": {
+ "dependencies": ["permission:contextMenus"],
+ "contexts": ["blessed_extension"]
+ },
+ "cookies": {
+ "dependencies": ["permission:cookies"],
+ "contexts": ["blessed_extension"]
+ },
+ "debugger": {
+ "dependencies": ["permission:debugger"],
+ "contexts": ["blessed_extension"]
+ },
+ "declarativeContent": {
+ "dependencies": ["permission:declarativeContent"],
+ "contexts": ["blessed_extension"]
+ },
+ "declarativeWebRequest": {
+ "dependencies": ["permission:declarativeWebRequest"],
+ "contexts": ["blessed_extension"]
+ },
+ "developerPrivate": {
+ "dependencies": ["permission:developerPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "dial": {
+ "dependencies": ["permission:dial"],
+ "contexts": ["blessed_extension"]
+ },
+ "downloads": {
+ "dependencies": ["permission:downloads"],
+ "contexts": ["blessed_extension"]
+ },
+ "echoPrivate": {
+ "dependencies": ["permission:echoPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.accessibility": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.discovery": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.dns": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.idltest": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.infobars": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.input.virtualKeyboard": {
+ "dependencies": ["permission:input", "permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.processes": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.mediaGalleries": {
+ "dependencies": ["permission:mediaGalleries", "permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.record": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.rlz": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.systemInfo.cpu": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.systemInfo.display": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.systemInfo.memory": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "experimental.systemInfo.storage": {
+ "dependencies": ["permission:experimental"],
+ "contexts": ["blessed_extension"]
+ },
+ "extension": {
+ "channel": "stable",
+ "extension_types": ["extension", "packaged_app"],
+ "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
not at google - send to devlin 2013/05/24 19:09:18 can we invert this? have a convention where we onl
cduvall 2013/05/30 00:50:51 Done.
+ },
+ "extension.getBackgroundPage": {
+ "parent": "extension",
+ "contexts": ["blessed_extension"]
+ },
+ "extension.getViews": {
+ "parent": "extension",
+ "contexts": ["blessed_extension"]
+ },
+ "extension.isAllowedFileSchemeAccess": {
+ "parent": "extension",
+ "contexts": ["blessed_extension"]
+ },
+ "extension.isAllowedIncognitoAccess": {
+ "parent": "extension",
+ "contexts": ["blessed_extension"]
+ },
+ "extension.onRequestExternal": {
+ "parent": "extension",
+ "contexts": ["blessed_extension"]
+ },
+ "extension.setUpdateUrlData": {
+ "parent": "extension",
+ "contexts": ["blessed_extension"]
+ },
+ "fileBrowserHandler": {
+ "dependencies": ["permission:fileBrowserHandler"],
+ "contexts": ["blessed_extension"]
+ },
+ "fileBrowserPrivate": {
+ "dependencies": ["permission:fileBrowserPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "fileSystem": {
+ "dependencies": ["permission:fileSystem"],
+ "contexts": ["blessed_extension"]
+ },
+ "fontSettings": {
+ "dependencies": ["permission:fontSettings"],
+ "contexts": ["blessed_extension"]
+ },
+ "history": {
+ "dependencies": ["permission:history"],
+ "contexts": ["blessed_extension"]
+ },
+ "i18n": {
+ "channel": "stable",
+ "extension_types": ["extension", "packaged_app", "platform_app"],
+ "contexts": ["blessed_extension", "unblessed_extension"]
not at google - send to devlin 2013/05/24 19:09:18 content script?
cduvall 2013/05/30 00:50:51 Done.
+ },
+ "identity": {
+ "dependencies": ["permission:identity"],
+ "contexts": ["blessed_extension"]
+ },
+ "idle": {
+ "dependencies": ["permission:idle"],
+ "contexts": ["blessed_extension"]
+ },
+ "input.ime": {
+ "dependencies": ["permission:input"],
+ "contexts": ["blessed_extension"]
+ },
+ "inputMethodPrivate": {
+ "dependencies": ["permission:input"],
+ "contexts": ["blessed_extension"]
+ },
+ "managedModePrivate": {
+ "dependencies": ["permission:managedModePrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "location": {
+ "dependencies": ["permission:location"],
+ "contexts": ["blessed_extension"]
+ },
+ "management": {
+ "dependencies": ["permission:management"],
+ "contexts": ["blessed_extension"]
+ },
+ "mediaGalleries": {
+ "dependencies": ["permission:mediaGalleries"],
+ "contexts": ["blessed_extension"]
+ },
+ "mediaGalleriesPrivate": {
+ "dependencies": ["permission:mediaGalleriesPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "mediaPlayerPrivate": {
+ "dependencies": ["permission:mediaPlayerPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "metricsPrivate": {
+ "dependencies": ["permission:metricsPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "networkingPrivate": {
+ "dependencies": ["permission:networkingPrivate"],
+ "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"]
+ },
+ "pageActions": {
+ "dependencies": ["manifest:page_actions"],
+ "contexts": ["blessed_extension"]
+ },
+ "pageCapture": {
+ "dependencies": ["permission:pageCapture"],
+ "contexts": ["blessed_extension"]
+ },
+ "pageLauncher": {
+ "dependencies": ["manifest:page_launcher"],
+ "contexts": ["blessed_extension"]
+ },
+ "permissions": {
+ "channel": "stable",
+ "extension_types": ["extension", "packaged_app", "platform_app"],
+ "contexts": ["blessed_extension"]
+ },
+ "power": {
+ "dependencies": ["permission:power"],
+ "contexts": ["blessed_extension"]
+ },
+ "privacy": {
+ "dependencies": ["permission:privacy"],
+ "contexts": ["blessed_extension"]
+ },
+ "proxy": {
+ "dependencies": ["permission:proxy"],
+ "contexts": ["blessed_extension"]
+ },
+ "pushMessaging": {
+ "dependencies": ["permission:pushMessaging"],
+ "contexts": ["blessed_extension"]
+ },
+ "rtcPrivate": {
+ "dependencies": ["permission:rtcPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "scriptBadge": {
+ "dependencies": ["manifest:script_badge"],
+ "contexts": ["blessed_extension"]
+ },
+ "serial": {
+ "dependencies": ["permission:serial"],
+ "contexts": ["blessed_extension"]
+ },
+ "sessionRestore": {
+ "dependencies": ["permission:sessionRestore"],
+ "contexts": ["blessed_extension"]
+ },
+ "socket": {
+ "dependencies": ["permission:socket"],
+ "contexts": ["blessed_extension"]
+ },
+ "storage": {
+ "dependencies": ["permission:storage"],
+ "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
+ },
+ "syncFileSystem": {
+ "dependencies": ["permission:syncFileSystem"],
+ "contexts": ["blessed_extension"]
+ },
+ "systemIndicator": {
+ "dependencies": ["manifest:system_indicator"],
+ "contexts": ["blessed_extension"]
+ },
+ "systemInfo.display": {
+ "dependencies": ["permission:systemInfo.display"],
+ "contexts": ["blessed_extension"]
+ },
+ "systemPrivate": {
+ "dependencies": ["permission:systemPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "tabCapture": {
+ "dependencies": ["permission:tabCapture"],
+ "contexts": ["blessed_extension"]
+ },
+ "tabs": {
+ "channel": "stable",
+ "extension_types": ["extension", "packaged_app"],
+ "contexts": ["blessed_extension"]
+ },
+ "terminalPrivate": {
+ "dependencies": ["permission:terminalPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "test": {
+ "channel": "stable",
+ "extension_types": "all",
+ "contexts": ["blessed_extension", "unblessed_extension", "content_script"]
+ },
+ "topSites": {
+ "dependencies": ["permission:topSites"],
+ "contexts": ["blessed_extension"]
+ },
+ "tts": {
+ "dependencies": ["permission:tts"],
+ "contexts": ["blessed_extension"]
+ },
+ "ttsEngine": {
+ "dependencies": ["permission:ttsEngine"],
+ "contexts": ["blessed_extension"]
+ },
+ "types": {
+ "channel": "stable",
+ "extension_types": "all",
not at google - send to devlin 2013/05/24 19:09:18 i don't think this should include hosted_app?
cduvall 2013/05/30 00:50:51 Done.
+ "contexts": ["blessed_extension"]
+ },
+ "usb": {
+ "dependencies": ["permission:usb"],
+ "contexts": ["blessed_extension"]
+ },
+ "wallpaperPrivate": {
+ "dependencies": ["permission:wallpaperPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "webNavigation": {
+ "dependencies": ["permission:webNavigation"],
+ "contexts": ["blessed_extension"]
+ },
+ "webRequest": {
+ "dependencies": ["permission:webRequest"],
+ "contexts": ["blessed_extension"]
+ },
+ "webSocketProxyPrivate": {
+ "dependencies": ["permission:webSocketProxyPrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "webstorePrivate": {
+ "dependencies": ["permission:webstorePrivate"],
+ "contexts": ["blessed_extension"]
+ },
+ "webview": {
+ "dependencies": ["permission:webview"],
+ "contexts": ["blessed_extension"]
+ },
+ "windows": {
+ "dependencies": ["permission:tabs"],
+ "contexts": ["blessed_extension"]
}
}
« no previous file with comments | « no previous file | chrome/common/extensions/api/api.gyp » ('j') | chrome/common/extensions/api/api.gyp » ('J')

Powered by Google App Engine
This is Rietveld 408576698