1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-23 09:17:59 +01:00

Fix some key handling bugs. Closes issue #210.

This commit is contained in:
Kris Maglione
2010-12-25 13:37:26 -05:00
parent 273796d321
commit 7e712dae0f
2 changed files with 4 additions and 6 deletions

View File

@@ -470,6 +470,7 @@ const CommandLine = Module("commandline", {
this.widgets.message = null; this.widgets.message = null;
modes.push(modes.COMMAND_LINE, this.currentExtendedMode, { modes.push(modes.COMMAND_LINE, this.currentExtendedMode, {
onEvent: this.closure.onEvent,
leave: function (params) { leave: function (params) {
if (params.pop) if (params.pop)
commandline.leave(); commandline.leave();
@@ -746,6 +747,7 @@ const CommandLine = Module("commandline", {
modes.push(modes.COMMAND_LINE, modes.PROMPT | extra.extended, modes.push(modes.COMMAND_LINE, modes.PROMPT | extra.extended,
update(Object.create(extra), { update(Object.create(extra), {
onEvent: extra.onEvent || this.closure.onEvent,
leave: function leave(stack) { leave: function leave(stack) {
commandline.leave(stack); commandline.leave(stack);
leave.supercall(this, stack); leave.supercall(this, stack);

View File

@@ -1011,11 +1011,11 @@ const Events = Module("events", {
} }
let res = this.onKeyPress(event); let res = this.onKeyPress(event);
if (res === true) if (res === true || res == null)
kill(event); kill(event);
else if (isArray(res)) { else if (isArray(res)) {
if (this.fallthrough) { if (this.fallthrough) {
if (this.fallthrough(res[0]) === true) if (dactyl.trapErrors(this.fallthrough, this, res[0]) === true)
kill(res[0]); kill(res[0]);
} }
else if (Events.isEscape(event)) else if (Events.isEscape(event))
@@ -1025,10 +1025,6 @@ const Events = Module("events", {
dactyl.beep(); dactyl.beep();
kill(event); kill(event);
} }
if (this.main == modes.COMMAND_LINE)
if (!(this.extended & modes.INPUT_MULTILINE))
dactyl.trapErrors(commandline.onEvent, commandline, event);
} }
// Reprocess unconsumed events // Reprocess unconsumed events