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

Side by Side Diff: chrome/renderer/resources/extensions/extension_custom_bindings.js

Issue 9386001: Implement a module system for the extension bindings JS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Custom bindings for the extension API. 5 // Custom bindings for the extension API.
6 6
7 (function() { 7 var extensionNatives = requireNative('extension');
8 var GetExtensionViews = extensionNatives.GetExtensionViews;
9 var OpenChannelToExtension = extensionNatives.OpenChannelToExtension;
8 10
9 native function GetChromeHidden(); 11 var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();
10 native function GetExtensionViews();
11 native function OpenChannelToExtension(sourceId, targetId, name);
12
13 var chromeHidden = GetChromeHidden();
14 12
15 // This should match chrome.windows.WINDOW_ID_NONE. 13 // This should match chrome.windows.WINDOW_ID_NONE.
16 // 14 //
17 // We can't use chrome.windows.WINDOW_ID_NONE directly because the 15 // We can't use chrome.windows.WINDOW_ID_NONE directly because the
18 // chrome.windows API won't exist unless this extension has permission for it; 16 // chrome.windows API won't exist unless this extension has permission for it;
19 // which may not be the case. 17 // which may not be the case.
20 var WINDOW_ID_NONE = -1; 18 var WINDOW_ID_NONE = -1;
21 19
22 chromeHidden.registerCustomHook('extension', 20 chromeHidden.registerCustomHook('extension',
23 function(bindingsAPI, extensionId) { 21 function(bindingsAPI, extensionId) {
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 var name = ''; 135 var name = '';
138 if (connectInfo && connectInfo.name) 136 if (connectInfo && connectInfo.name)
139 name = connectInfo.name; 137 name = connectInfo.name;
140 138
141 var portId = OpenChannelToExtension(extensionId, targetId, name); 139 var portId = OpenChannelToExtension(extensionId, targetId, name);
142 if (portId >= 0) 140 if (portId >= 0)
143 return chromeHidden.Port.createPort(portId, name); 141 return chromeHidden.Port.createPort(portId, name);
144 throw new Error('Error connecting to extension ' + targetId); 142 throw new Error('Error connecting to extension ' + targetId);
145 }); 143 });
146 }); 144 });
147
148 })();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698