From ae5d961d9747106c3935f0c368e684244dca4acb Mon Sep 17 00:00:00 2001 From: Sahan Fernando Date: Sun, 20 Jun 2021 20:06:56 +1000 Subject: [PATCH] Kernel: Pass TTY-switch keyboard combo to userspace --- Kernel/Devices/HID/PS2KeyboardDevice.cpp | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/Kernel/Devices/HID/PS2KeyboardDevice.cpp b/Kernel/Devices/HID/PS2KeyboardDevice.cpp index 743319d6b7..75e4145f04 100644 --- a/Kernel/Devices/HID/PS2KeyboardDevice.cpp +++ b/Kernel/Devices/HID/PS2KeyboardDevice.cpp @@ -68,20 +68,12 @@ void PS2KeyboardDevice::irq_handle_byte_read(u8 byte) case I8042_ACK: break; default: - if (m_modifiers & Mod_Alt) { - switch (ch) { - case 0x02 ... 0x01 + ConsoleManagement::s_max_virtual_consoles: - g_io_work->queue([this, ch]() { - ConsoleManagement::the().switch_to(ch - 0x02); - }); - break; - default: - key_state_changed(ch, pressed); - break; - } - } else { - key_state_changed(ch, pressed); + if ((m_modifiers & Mod_Alt) != 0 && ch >= 2 && ch <= ConsoleManagement::s_max_virtual_consoles + 1) { + g_io_work->queue([this, ch]() { + ConsoleManagement::the().switch_to(ch - 0x02); + }); } + key_state_changed(ch, pressed); } }