From c059e3aa7f93da470f052a5cd8ee0d8dc969e679 Mon Sep 17 00:00:00 2001 From: Berke Güzel Date: Tue, 13 Oct 2026 13:44:13 +0300 Subject: rename and simplification --- src/platform/cocoa/keymap.c | 128 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 src/platform/cocoa/keymap.c (limited to 'src/platform/cocoa/keymap.c') diff --git a/src/platform/cocoa/keymap.c b/src/platform/cocoa/keymap.c new file mode 100644 index 0000000..b81c364 --- /dev/null +++ b/src/platform/cocoa/keymap.c @@ -0,0 +1,128 @@ +#include "keymap.h" +#include "keycodes.h" + +enum yasl_key yasl_key_from_cocoa(uint32_t code) +{ + switch (code) { + case kVK_ANSI_A: return YASL_KEY_A; + case kVK_ANSI_B: return YASL_KEY_B; + case kVK_ANSI_C: return YASL_KEY_C; + case kVK_ANSI_D: return YASL_KEY_D; + case kVK_ANSI_E: return YASL_KEY_E; + case kVK_ANSI_F: return YASL_KEY_F; + case kVK_ANSI_G: return YASL_KEY_G; + case kVK_ANSI_H: return YASL_KEY_H; + case kVK_ANSI_I: return YASL_KEY_I; + case kVK_ANSI_J: return YASL_KEY_J; + case kVK_ANSI_K: return YASL_KEY_K; + case kVK_ANSI_L: return YASL_KEY_L; + case kVK_ANSI_M: return YASL_KEY_M; + case kVK_ANSI_N: return YASL_KEY_N; + case kVK_ANSI_O: return YASL_KEY_O; + case kVK_ANSI_P: return YASL_KEY_P; + case kVK_ANSI_Q: return YASL_KEY_Q; + case kVK_ANSI_R: return YASL_KEY_R; + case kVK_ANSI_S: return YASL_KEY_S; + case kVK_ANSI_T: return YASL_KEY_T; + case kVK_ANSI_U: return YASL_KEY_U; + case kVK_ANSI_V: return YASL_KEY_V; + case kVK_ANSI_W: return YASL_KEY_W; + case kVK_ANSI_X: return YASL_KEY_X; + case kVK_ANSI_Y: return YASL_KEY_Y; + case kVK_ANSI_Z: return YASL_KEY_Z; + case kVK_ANSI_0: return YASL_KEY_0; + case kVK_ANSI_1: return YASL_KEY_1; + case kVK_ANSI_2: return YASL_KEY_2; + case kVK_ANSI_3: return YASL_KEY_3; + case kVK_ANSI_4: return YASL_KEY_4; + case kVK_ANSI_5: return YASL_KEY_5; + case kVK_ANSI_6: return YASL_KEY_6; + case kVK_ANSI_7: return YASL_KEY_7; + case kVK_ANSI_8: return YASL_KEY_8; + case kVK_ANSI_9: return YASL_KEY_9; + case kVK_Return: return YASL_KEY_ENTER; + case kVK_Tab: return YASL_KEY_TAB; + case kVK_Space: return YASL_KEY_SPACE; + case kVK_Escape: return YASL_KEY_ESCAPE; + case kVK_Home: return YASL_KEY_HOME; + case kVK_End: return YASL_KEY_END; + case kVK_Delete: return YASL_KEY_BACKSPACE; + case kVK_ForwardDelete: return YASL_KEY_DELETE; + case kVK_PageUp: return YASL_KEY_PAGE_UP; + case kVK_PageDown: return YASL_KEY_PAGE_DOWN; + case kVK_Help: return YASL_KEY_INSERT; + case kVK_LeftArrow: return YASL_KEY_LEFT; + case kVK_RightArrow: return YASL_KEY_RIGHT; + case kVK_DownArrow: return YASL_KEY_DOWN; + case kVK_UpArrow: return YASL_KEY_UP; + case kVK_Command: return YASL_KEY_LEFT_SUPER; + case kVK_Shift: return YASL_KEY_LEFT_SHIFT; + case kVK_CapsLock: return YASL_KEY_CAPS_LOCK; + case kVK_Option: return YASL_KEY_LEFT_ALT; + case kVK_Control: return YASL_KEY_LEFT_CONTROL; + case kVK_RightCommand: return YASL_KEY_RIGHT_SUPER; + case kVK_RightShift: return YASL_KEY_RIGHT_SHIFT; + case kVK_RightOption: return YASL_KEY_RIGHT_ALT; + case kVK_RightControl: return YASL_KEY_RIGHT_CONTROL; + case kVK_ContextualMenu: return YASL_KEY_MENU; + case kVK_VolumeUp: return YASL_KEY_VOLUME_UP; + case kVK_VolumeDown: return YASL_KEY_VOLUME_DOWN; + case kVK_Mute: return YASL_KEY_MUTE; + case kVK_ISO_Section: return YASL_KEY_ISO_BACKSLASH; + case kVK_JIS_Yen: return YASL_KEY_YEN; + case kVK_JIS_Underscore: return YASL_KEY_RO; + case kVK_JIS_Eisu: return YASL_KEY_EISU; + case kVK_JIS_Kana: return YASL_KEY_KANA; + case kVK_JIS_KeypadComma: return YASL_KEY_KP_COMMA; + case kVK_ANSI_Equal: return YASL_KEY_EQUAL; + case kVK_ANSI_Minus: return YASL_KEY_MINUS; + case kVK_ANSI_LeftBracket: return YASL_KEY_LEFT_BRACKET; + case kVK_ANSI_RightBracket: return YASL_KEY_RIGHT_BRACKET; + case kVK_ANSI_Quote: return YASL_KEY_APOSTROPHE; + case kVK_ANSI_Semicolon: return YASL_KEY_SEMICOLON; + case kVK_ANSI_Backslash: return YASL_KEY_BACKSLASH; + case kVK_ANSI_Comma: return YASL_KEY_COMMA; + case kVK_ANSI_Slash: return YASL_KEY_SLASH; + case kVK_ANSI_Period: return YASL_KEY_PERIOD; + case kVK_ANSI_Grave: return YASL_KEY_GRAVE; + case kVK_F1: return YASL_KEY_F1; + case kVK_F2: return YASL_KEY_F2; + case kVK_F3: return YASL_KEY_F3; + case kVK_F4: return YASL_KEY_F4; + case kVK_F5: return YASL_KEY_F5; + case kVK_F6: return YASL_KEY_F6; + case kVK_F7: return YASL_KEY_F7; + case kVK_F8: return YASL_KEY_F8; + case kVK_F9: return YASL_KEY_F9; + case kVK_F10: return YASL_KEY_F10; + case kVK_F11: return YASL_KEY_F11; + case kVK_F12: return YASL_KEY_F12; + case kVK_F13: return YASL_KEY_F13; + case kVK_F14: return YASL_KEY_F14; + case kVK_F15: return YASL_KEY_F15; + case kVK_F16: return YASL_KEY_F16; + case kVK_F17: return YASL_KEY_F17; + case kVK_F18: return YASL_KEY_F18; + case kVK_F19: return YASL_KEY_F19; + case kVK_F20: return YASL_KEY_F20; + case kVK_ANSI_Keypad0: return YASL_KEY_KP_0; + case kVK_ANSI_Keypad1: return YASL_KEY_KP_1; + case kVK_ANSI_Keypad2: return YASL_KEY_KP_2; + case kVK_ANSI_Keypad3: return YASL_KEY_KP_3; + case kVK_ANSI_Keypad4: return YASL_KEY_KP_4; + case kVK_ANSI_Keypad5: return YASL_KEY_KP_5; + case kVK_ANSI_Keypad6: return YASL_KEY_KP_6; + case kVK_ANSI_Keypad7: return YASL_KEY_KP_7; + case kVK_ANSI_Keypad8: return YASL_KEY_KP_8; + case kVK_ANSI_Keypad9: return YASL_KEY_KP_9; + case kVK_ANSI_KeypadDecimal: return YASL_KEY_KP_DECIMAL; + case kVK_ANSI_KeypadMultiply: return YASL_KEY_KP_MULTIPLY; + case kVK_ANSI_KeypadPlus: return YASL_KEY_KP_ADD; + case kVK_ANSI_KeypadClear: return YASL_KEY_KP_CLEAR; + case kVK_ANSI_KeypadDivide: return YASL_KEY_KP_DIVIDE; + case kVK_ANSI_KeypadEnter: return YASL_KEY_KP_ENTER; + case kVK_ANSI_KeypadMinus: return YASL_KEY_KP_SUBTRACT; + case kVK_ANSI_KeypadEquals: return YASL_KEY_KP_EQUAL; + default: return YASL_KEY_UNKNOWN; + } +} -- cgit v1.2.3