aboutsummaryrefslogtreecommitdiff
path: root/kernel/io/keyboard/keyboard_handler.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/io/keyboard/keyboard_handler.c')
-rw-r--r--kernel/io/keyboard/keyboard_handler.c15
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);
}
}