fix repeated key events for firefox
This commit is contained in:
parent
a13bb1db4a
commit
7212563e3a
2 changed files with 19 additions and 1 deletions
|
|
@ -4,7 +4,7 @@ ace.KeyBinding = function(element, editor) {
|
|||
|
||||
var keys = this.keys;
|
||||
|
||||
ace.addListener(element, "keydown", function(e) {
|
||||
ace.addKeyListener(element, function(e) {
|
||||
var key = e.keyCode;
|
||||
var selection = editor.getSelection();
|
||||
|
||||
|
|
|
|||
|
|
@ -272,4 +272,22 @@ ace.addTripleClickListener = function(el, callback) {
|
|||
ace.autoremoveListener(el, "mousedown", callback, 300);
|
||||
}, 300);
|
||||
});
|
||||
};
|
||||
|
||||
ace.addKeyListener = function(el, callback) {
|
||||
var lastDown = null;
|
||||
|
||||
ace.addListener(el, "keydown", function(e) {
|
||||
lastDown = e.keyCode;
|
||||
return callback(e);
|
||||
});
|
||||
|
||||
ace.addListener(el, "keypress", function(e) {
|
||||
var keyId = e.keyCode;
|
||||
if (lastDown !== keyId) {
|
||||
return callback(e);
|
||||
} else {
|
||||
lastDown = null;
|
||||
}
|
||||
});
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue