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

Unified Diff: chrome/renderer/resources/extensions/permissions_custom_bindings.js

Issue 11571014: Lazy load chrome.* APIs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more progress Created 7 years, 11 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
Index: chrome/renderer/resources/extensions/permissions_custom_bindings.js
diff --git a/chrome/renderer/resources/extensions/permissions_custom_bindings.js b/chrome/renderer/resources/extensions/permissions_custom_bindings.js
index b32a57deb5e34e350a549405b5aeed636d95d2b0..179117b5dfcdfff47127a28107a6adf19f700b15 100644
--- a/chrome/renderer/resources/extensions/permissions_custom_bindings.js
+++ b/chrome/renderer/resources/extensions/permissions_custom_bindings.js
@@ -4,7 +4,9 @@
// Custom bindings for the Permissions API.
-var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();
+var Bindings = require('schema_binding_generator').Bindings;
+var bindings = new Bindings('permissions');
+
var sendRequest = require('sendRequest').sendRequest;
var lastError = require('lastError');
@@ -15,8 +17,9 @@ var lastError = require('lastError');
// https://code.google.com/p/chromium/issues/detail?id=162044
// https://code.google.com/p/chromium/issues/detail?id=162042
// TODO(bryeung): delete this file.
-chromeHidden.registerCustomHook('permissions', function(api) {
+bindings.registerCustomHook(function(api) {
var apiFunctions = api.apiFunctions;
+ var permissions = api.compiledApi;
function maybeConvertToObject(str) {
var parts = str.split('|');
@@ -80,12 +83,14 @@ chromeHidden.registerCustomHook('permissions', function(api) {
// dispatchToListener call happens after argument validation, which works
// around the problem that Permissions.permissions is supposed to be a list
// of strings.
- chrome.permissions.onAdded.dispatchToListener = function(callback, args) {
+ permissions.onAdded.dispatchToListener = function(callback, args) {
for (var i = 0; i < args[0].permissions.length; i += 1) {
args[0].permissions[i] = maybeConvertToObject(args[0].permissions[i]);
}
chrome.Event.prototype.dispatchToListener(callback, args);
};
- chrome.permissions.onRemoved.dispatchToListener =
- chrome.permissions.onAdded.dispatchToListener;
+ permissions.onRemoved.dispatchToListener =
+ permissions.onAdded.dispatchToListener;
});
+
+exports.bindings = bindings.generate();

Powered by Google App Engine
This is Rietveld 408576698