Index: chrome/renderer/resources/extensions/input.ime_custom_bindings.js |
diff --git a/chrome/renderer/resources/extensions/input.ime_custom_bindings.js b/chrome/renderer/resources/extensions/input.ime_custom_bindings.js |
index 8f400c780fd3502184137a6a32262de32ff0a27b..4b4050fd3876aa387b495ff9405fbd8d31cf1ae9 100644 |
--- a/chrome/renderer/resources/extensions/input.ime_custom_bindings.js |
+++ b/chrome/renderer/resources/extensions/input.ime_custom_bindings.js |
@@ -8,29 +8,16 @@ |
var chromeHidden = requireNative('chrome_hidden').GetChromeHidden(); |
chromeHidden.registerCustomHook('input.ime', function() { |
- chrome.input.ime.onKeyEvent.dispatch = function(engineID, keyData) { |
- var args = Array.prototype.slice.call(arguments); |
- if (this.validate_) { |
- var validationErrors = this.validate_(args); |
- if (validationErrors) { |
- chrome.input.ime.eventHandled(requestId, false); |
- return validationErrors; |
- } |
- } |
- if (this.listeners_.length > 1) { |
- console.error('Too many listeners for onKeyEvent: ' + e.stack); |
- chrome.input.ime.eventHandled(requestId, false); |
- return; |
- } |
- for (var i = 0; i < this.listeners_.length; i++) { |
- try { |
- var requestId = keyData.requestId; |
- var result = this.listeners_[i].apply(null, args); |
- chrome.input.ime.eventHandled(requestId, result); |
- } catch (e) { |
- console.error('Error in event handler for onKeyEvent: ' + e.stack); |
- chrome.input.ime.eventHandled(requestId, false); |
- } |
+ chrome.input.ime.onKeyEvent.dispatchToListener = function(callback, args) { |
+ var engineID = args[0]; |
+ var keyData = args[1]; |
+ |
+ var result = false; |
+ try { |
+ result = callback.apply(null, args); |
benwells
2012/07/06 06:25:56
Nit: use chrome.Event.prototype.dispathToListener,
koz (OOO until 15th September)
2012/07/06 07:31:20
Done.
|
+ } catch (e) { |
+ console.error('Error in event handler for onKeyEvent: ' + e.stack); |
} |
+ chrome.input.ime.eventHandled(keyData.requestId, result); |
}; |
}); |