aboutsummaryrefslogtreecommitdiffstats
path: root/vimiumFrontend.js
diff options
context:
space:
mode:
authorilya2010-03-07 14:08:55 -0800
committerilya2010-03-07 14:13:02 -0800
commit8bb111d83f922627a01fb879ef4cbc630dcf956d (patch)
tree290c5e7ef6b00d30d8512683a6368961840c4c48 /vimiumFrontend.js
parent063fc16a0e11d59639802b6e13784677f1f3e343 (diff)
downloadvimium-8bb111d83f922627a01fb879ef4cbc630dcf956d.tar.bz2
Fix a bunch of key handling related bugs in one swoop.
We were incorrectly generating valid first keys and completion keys for <c-x> type commands. This closes issue #85 and the alt+d override issue.
Diffstat (limited to 'vimiumFrontend.js')
-rw-r--r--vimiumFrontend.js19
1 files changed, 11 insertions, 8 deletions
diff --git a/vimiumFrontend.js b/vimiumFrontend.js
index bac5d8ae..f67768f7 100644
--- a/vimiumFrontend.js
+++ b/vimiumFrontend.js
@@ -287,14 +287,17 @@ function onKeydown(event) {
return;
}
- if (event.shiftKey)
- keyChar = keyChar.toUpperCase();
- if (event.ctrlKey)
- keyChar = "<c-" + keyChar + ">";
- if (event.metaKey)
- keyChar = "<m-" + keyChar + ">";
- if (event.altKey)
- keyChar = "<a-" + keyChar + ">";
+ if (keyChar != "") // Again, ignore just modifiers. Maybe this should replace the keyCode > 31 condition.
+ {
+ if (event.shiftKey)
+ keyChar = keyChar.toUpperCase();
+ else if (event.ctrlKey)
+ keyChar = "<c-" + keyChar + ">";
+ else if (event.metaKey)
+ keyChar = "<m-" + keyChar + ">";
+ else if (event.altKey)
+ keyChar = "<a-" + keyChar + ">";
+ }
}
if (insertMode && isEscape(event))