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

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

Issue 11571014: Lazy load chrome.* APIs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: comments/TODOs 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/app_window_custom_bindings.js
diff --git a/chrome/renderer/resources/extensions/app_window_custom_bindings.js b/chrome/renderer/resources/extensions/app_window_custom_bindings.js
index 1bb5befe0c061a8b449601eefa0f12ece2c3181b..65470e6d9bf4424cf0fc371c74abbea074dce985 100644
--- a/chrome/renderer/resources/extensions/app_window_custom_bindings.js
+++ b/chrome/renderer/resources/extensions/app_window_custom_bindings.js
@@ -4,15 +4,19 @@
// Custom bindings for the app_window API.
+var bindings = new (require('schema_binding_generator').Bindings)('app.window');
+
var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();
+var chrome = requireNative('chrome').GetChrome();
var sendRequest = require('sendRequest').sendRequest;
var appWindowNatives = requireNative('app_window');
var forEach = require('utils').forEach;
var GetView = appWindowNatives.GetView;
var OnContextReady = appWindowNatives.OnContextReady;
-chromeHidden.registerCustomHook('app.window', function(bindingsAPI) {
+bindings.registerCustomHook(function(bindingsAPI) {
var apiFunctions = bindingsAPI.apiFunctions;
+
apiFunctions.setCustomCallback('create',
function(name, request, windowParams) {
var view = null;
@@ -81,6 +85,9 @@ chromeHidden.registerCustomHook('app.window', function(bindingsAPI) {
// This is an internal function, but needs to be bound with setHandleRequest
// because it is called from a different JS context.
apiFunctions.setHandleRequest('initializeAppWindow', function(params) {
+ // TODO(cduvall): Fix dependencies.
+ chrome.app.currentWindowInternal;
+
var AppWindow = function() {};
forEach(chromeHidden.internalAPIs.app.currentWindowInternal, function(fn) {
AppWindow.prototype[fn] =
@@ -148,3 +155,5 @@ chromeHidden.updateAppWindowProperties = function(update) {
(oldData.maximized && !update.maximized))
currentWindow["onRestored"].dispatch();
};
+
+exports.bindings = bindings.generate();

Powered by Google App Engine
This is Rietveld 408576698