feat: add keyboard layout support

This commit is contained in:
daniel committed 2026-08-13 17:57:44 +02:00
1 parent 86e3ebfe33
commit 821543238d
36 files changed
+1132 -125

No files matched your search

+11
View File
@@ -18,6 +18,13 @@ namespace Drivers::PS2::Keyboard {
bool Ctrl;
bool Alt;
bool CapsLock;
// Right Alt held. Reported separately from Alt so keyboard layouts can
// use it as AltGr without swallowing left-Alt shortcuts.
bool AltGr;
// Key came from an E0-prefixed (extended) scancode. The prefix is not
// part of Scancode, so without this flag keypad "/" is indistinguishable
// from the main "/" key and layout translation would rewrite it.
bool Extended;
};
// Modifier key state
@@ -52,4 +59,8 @@ namespace Drivers::PS2::Keyboard {
// Inject a key event from an external source (e.g., USB HID keyboard)
void InjectKeyEvent(const KeyEvent& event);
// Current Caps Lock state. Injecting drivers (USB HID) need this to
// compute ASCII, since the lock is toggled centrally here.
bool GetCapsLock();
};