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

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

Issue 302463005: Add support for AMD to the extensions module system. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 6 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
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 binding for the browserAction API. 5 // Custom binding for the browserAction API.
6 6
7 var binding = require('binding').Binding.create('browserAction'); 7 var binding = require('binding').Binding.create('browserAction');
8 8
9 var setIcon = require('setIcon').setIcon; 9 var setIcon = require('setIcon').setIcon;
10 var getExtensionViews = requireNative('runtime').GetExtensionViews; 10 var getExtensionViews = requireNative('runtime_natives').GetExtensionViews;
11 11
12 binding.registerCustomHook(function(bindingsAPI) { 12 binding.registerCustomHook(function(bindingsAPI) {
13 var apiFunctions = bindingsAPI.apiFunctions; 13 var apiFunctions = bindingsAPI.apiFunctions;
14 14
15 apiFunctions.setHandleRequest('setIcon', function(details, callback) { 15 apiFunctions.setHandleRequest('setIcon', function(details, callback) {
16 setIcon(details, callback, this.name, this.definition.parameters, 16 setIcon(details, callback, this.name, this.definition.parameters,
17 'browser action'); 17 'browser action');
18 }); 18 });
19 19
20 apiFunctions.setCustomCallback('openPopup', 20 apiFunctions.setCustomCallback('openPopup',
21 function(name, request, response) { 21 function(name, request, response) {
22 if (!request.callback) 22 if (!request.callback)
23 return; 23 return;
24 24
25 if (chrome.runtime.lastError) { 25 if (chrome.runtime.lastError) {
26 request.callback(); 26 request.callback();
27 } else { 27 } else {
28 var views = getExtensionViews(-1, 'POPUP'); 28 var views = getExtensionViews(-1, 'POPUP');
29 request.callback(views.length > 0 ? views[0] : null); 29 request.callback(views.length > 0 ? views[0] : null);
30 } 30 }
31 request.callback = null; 31 request.callback = null;
32 }); 32 });
33 }); 33 });
34 34
35 exports.binding = binding.generate(); 35 exports.binding = binding.generate();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698