OLD | NEW |
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 contextMenus API. | 5 // Custom binding for the contextMenus API. |
6 | 6 |
7 var binding = require('binding').Binding.create('contextMenus'); | 7 var binding = require('binding').Binding.create('contextMenus'); |
8 | 8 |
9 var contextMenuNatives = requireNative('context_menus'); | 9 var contextMenuNatives = requireNative('context_menus'); |
10 var sendRequest = require('sendRequest').sendRequest; | 10 var sendRequest = require('sendRequest').sendRequest; |
(...skipping 21 matching lines...) Expand all Loading... |
32 if (contextMenus.listening) { | 32 if (contextMenus.listening) { |
33 return; | 33 return; |
34 } | 34 } |
35 contextMenus.listening = true; | 35 contextMenus.listening = true; |
36 contextMenus.event.addListener(function() { | 36 contextMenus.event.addListener(function() { |
37 // An extension context menu item has been clicked on - fire the onclick | 37 // An extension context menu item has been clicked on - fire the onclick |
38 // if there is one. | 38 // if there is one. |
39 var id = arguments[0].menuItemId; | 39 var id = arguments[0].menuItemId; |
40 var onclick = contextMenus.handlersForId(id)[id]; | 40 var onclick = contextMenus.handlersForId(id)[id]; |
41 if (onclick) { | 41 if (onclick) { |
42 onclick.apply(null, arguments); | 42 $Function.apply(onclick, null, arguments); |
43 } | 43 } |
44 }); | 44 }); |
45 }; | 45 }; |
46 | 46 |
47 apiFunctions.setHandleRequest('create', function() { | 47 apiFunctions.setHandleRequest('create', function() { |
48 var args = arguments; | 48 var args = arguments; |
49 var id = contextMenuNatives.GetNextContextMenuId(); | 49 var id = contextMenuNatives.GetNextContextMenuId(); |
50 args[0].generatedId = id; | 50 args[0].generatedId = id; |
51 var optArgs = { | 51 var optArgs = { |
52 customCallback: this.customCallback, | 52 customCallback: this.customCallback, |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 function(name, request, response) { | 92 function(name, request, response) { |
93 if (chrome.runtime.lastError) { | 93 if (chrome.runtime.lastError) { |
94 return; | 94 return; |
95 } | 95 } |
96 contextMenus.generatedIdHandlers = {}; | 96 contextMenus.generatedIdHandlers = {}; |
97 contextMenus.stringIdHandlers = {}; | 97 contextMenus.stringIdHandlers = {}; |
98 }); | 98 }); |
99 }); | 99 }); |
100 | 100 |
101 exports.binding = binding.generate(); | 101 exports.binding = binding.generate(); |
OLD | NEW |