| 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 |