diff options
Diffstat (limited to 'kernel/io/keyboard/keyboard_handler.c')
| -rw-r--r-- | kernel/io/keyboard/keyboard_handler.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/kernel/io/keyboard/keyboard_handler.c b/kernel/io/keyboard/keyboard_handler.c index 26b4586..e06936d 100644 --- a/kernel/io/keyboard/keyboard_handler.c +++ b/kernel/io/keyboard/keyboard_handler.c @@ -1,6 +1,7 @@ #include "../../interrupt_descriptor_table.h" #include "../../gpu/text_mode/display.h" #include "scancode_map.h" +#include "../../../os/main.h" extern void keyboard_handler(void); extern char read_port(unsigned short port); @@ -66,18 +67,8 @@ void handle_keypress() { if(!isKeyup(scancode)) { - char pressed_key = scancode_map[scancode]; - switch(pressed_key) - { - case '\b': - scrn_backspace(); - break; - case '\n': - scrn_newline(); - break; - default: - scrn_putchar(pressed_key); - } + unsigned char pressed_key = scancode_map[scancode]; + os_proxy_keypress(pressed_key); } } |