diff options
-rw-r--r-- | console-client/ChangeLog | 5 | ||||
-rw-r--r-- | console-client/pc-kbd.c | 20 |
2 files changed, 15 insertions, 10 deletions
diff --git a/console-client/ChangeLog b/console-client/ChangeLog index c43a5dfa..a784ab23 100644 --- a/console-client/ChangeLog +++ b/console-client/ChangeLog @@ -1,5 +1,10 @@ 2002-09-17 Marcus Brinkmann <marcus@gnu.org> + * pc-kbd.c (input_loop): Move code that toggles NumLock after code + that handles direct entry of character codes with RightAlt. + +2002-09-17 Marcus Brinkmann <marcus@gnu.org> + * Makefile, bdf.c, bdf.h, bell.h, console.c, display.h, driver.c, driver.h, generic-speaker.c, input.h, pc-kbd.c, timer.c, timer.h, unicode.h, vga.c, vga-dynacolor.c, vga-dynacolor.h, vga-dynafont.c, diff --git a/console-client/pc-kbd.c b/console-client/pc-kbd.c index 3ec6404e..085d1fe0 100644 --- a/console-client/pc-kbd.c +++ b/console-client/pc-kbd.c @@ -506,16 +506,6 @@ input_loop (any_t unused) else if (!down) state.caps_lock_pressed = 0; } - else if (sc == SC_NUMLOCK) - { - if (down && !state.num_lock_pressed) - { - state.num_lock = !state.num_lock; - state.num_lock_pressed = 1; - } - else if (!down) - state.num_lock_pressed = 0; - } else if (sc == SC_LEFT_CTRL) state.left_ctrl = down; else if (sc == SC_LEFT_ALT) @@ -552,6 +542,16 @@ input_loop (any_t unused) state.direct = (state.direct << 4) | 0xd; else if (state.right_alt && down && sc == SC_PAD_PLUS) /* XXX */ state.direct = (state.direct << 4) | 0xe; + else if (sc == SC_NUMLOCK) + { + if (down && !state.num_lock_pressed) + { + state.num_lock = !state.num_lock; + state.num_lock_pressed = 1; + } + else if (!down) + state.num_lock_pressed = 0; + } else if (down && sc < sizeof (sc_to_kc)/sizeof (sc_to_kc[0])) { #if QUAERENDO_INVENIETIS |