From de5877f54aca35d353bdbcedbdf4fa10fda77c4c Mon Sep 17 00:00:00 2001 From: Thomas Bernard Date: Sun, 16 Sep 2018 21:59:43 +0200 Subject: [PATCH] Show the "MENU" key https://en.wikipedia.org/wiki/Menu_key --- src/keyboard.c | 2 +- src/keycodes.h | 122 +++++++++++++++++++------------------ tools/generate_keycodes.py | 3 +- 3 files changed, 66 insertions(+), 61 deletions(-) diff --git a/src/keyboard.c b/src/keyboard.c index b7376e43..0a323080 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -491,6 +491,7 @@ const char * Key_name(word key) { KEY_RALT , "RAlt" }, { KEY_LALT , "LAlt" }, #endif + { KEY_MENU , "Menu" }, #if defined(USE_SDL) { SDLK_RMETA , "RMeta" }, { SDLK_LMETA , "LMeta" }, @@ -502,7 +503,6 @@ const char * Key_name(word key) { SDLK_PRINT , "Print" }, { SDLK_SYSREQ , "SysReq" }, { SDLK_BREAK , "Break" }, - { SDLK_MENU , "Menu" }, { SDLK_POWER , "Power" }, { SDLK_EURO , "Euro" }, { SDLK_UNDO , "Undo" }, diff --git a/src/keycodes.h b/src/keycodes.h index 7a5b85ed..106a20ca 100644 --- a/src/keycodes.h +++ b/src/keycodes.h @@ -80,6 +80,7 @@ #define KEY_RCTRL K2K(SDLK_RCTRL) #define KEY_LALT K2K(SDLK_LALT) #define KEY_RALT K2K(SDLK_RALT) +#define KEY_MENU K2K(SDLK_MENU) #define KEY_0 K2K(SDLK_0) #define KEY_1 K2K(SDLK_1) #define KEY_2 K2K(SDLK_2) @@ -195,6 +196,7 @@ #define KEY_RCTRL K2K(XK_Control_R) #define KEY_LALT K2K(XK_Alt_L) #define KEY_RALT K2K(XK_Alt_R) +#define KEY_MENU K2K(XK_Menu) #define KEY_0 K2K(XK_0) #define KEY_1 K2K(XK_1) #define KEY_2 K2K(XK_2) @@ -296,6 +298,7 @@ #define KEY_RCTRL VK_RCONTROL #define KEY_LALT VK_LMENU #define KEY_RALT VK_RMENU +#define KEY_MENU VK_APPS #define KEY_0 0x30 #define KEY_1 0x31 #define KEY_2 0x32 @@ -397,65 +400,66 @@ #define KEY_RCTRL 36 #define KEY_LALT 37 #define KEY_RALT 38 -#define KEY_0 39 -#define KEY_1 40 -#define KEY_2 41 -#define KEY_3 42 -#define KEY_4 43 -#define KEY_5 44 -#define KEY_6 45 -#define KEY_7 46 -#define KEY_8 47 -#define KEY_9 48 -#define KEY_a 49 -#define KEY_b 50 -#define KEY_c 51 -#define KEY_d 52 -#define KEY_e 53 -#define KEY_f 54 -#define KEY_g 55 -#define KEY_h 56 -#define KEY_i 57 -#define KEY_j 58 -#define KEY_k 59 -#define KEY_l 60 -#define KEY_m 61 -#define KEY_n 62 -#define KEY_o 63 -#define KEY_p 64 -#define KEY_q 65 -#define KEY_r 66 -#define KEY_s 67 -#define KEY_t 68 -#define KEY_u 69 -#define KEY_v 70 -#define KEY_w 71 -#define KEY_x 72 -#define KEY_y 73 -#define KEY_z 74 -#define KEY_KP0 75 -#define KEY_KP1 76 -#define KEY_KP2 77 -#define KEY_KP3 78 -#define KEY_KP4 79 -#define KEY_KP5 80 -#define KEY_KP6 81 -#define KEY_KP7 82 -#define KEY_KP8 83 -#define KEY_KP9 84 -#define KEY_SCROLLOCK 85 -#define KEY_F1 86 -#define KEY_F2 87 -#define KEY_F3 88 -#define KEY_F4 89 -#define KEY_F5 90 -#define KEY_F6 91 -#define KEY_F7 92 -#define KEY_F8 93 -#define KEY_F9 94 -#define KEY_F10 95 -#define KEY_F11 96 -#define KEY_F12 97 +#define KEY_MENU 39 +#define KEY_0 40 +#define KEY_1 41 +#define KEY_2 42 +#define KEY_3 43 +#define KEY_4 44 +#define KEY_5 45 +#define KEY_6 46 +#define KEY_7 47 +#define KEY_8 48 +#define KEY_9 49 +#define KEY_a 50 +#define KEY_b 51 +#define KEY_c 52 +#define KEY_d 53 +#define KEY_e 54 +#define KEY_f 55 +#define KEY_g 56 +#define KEY_h 57 +#define KEY_i 58 +#define KEY_j 59 +#define KEY_k 60 +#define KEY_l 61 +#define KEY_m 62 +#define KEY_n 63 +#define KEY_o 64 +#define KEY_p 65 +#define KEY_q 66 +#define KEY_r 67 +#define KEY_s 68 +#define KEY_t 69 +#define KEY_u 70 +#define KEY_v 71 +#define KEY_w 72 +#define KEY_x 73 +#define KEY_y 74 +#define KEY_z 75 +#define KEY_KP0 76 +#define KEY_KP1 77 +#define KEY_KP2 78 +#define KEY_KP3 79 +#define KEY_KP4 80 +#define KEY_KP5 81 +#define KEY_KP6 82 +#define KEY_KP7 83 +#define KEY_KP8 84 +#define KEY_KP9 85 +#define KEY_SCROLLOCK 86 +#define KEY_F1 87 +#define KEY_F2 88 +#define KEY_F3 89 +#define KEY_F4 90 +#define KEY_F5 91 +#define KEY_F6 92 +#define KEY_F7 93 +#define KEY_F8 94 +#define KEY_F9 95 +#define KEY_F10 96 +#define KEY_F11 97 +#define KEY_F12 98 // end of KEY definitions for others #endif diff --git a/tools/generate_keycodes.py b/tools/generate_keycodes.py index ae842d42..f1232913 100755 --- a/tools/generate_keycodes.py +++ b/tools/generate_keycodes.py @@ -16,7 +16,7 @@ keys = ['UNKNOWN', 'EQUALS', 'MINUS', 'PERIOD', 'CAPSLOCK', 'CLEAR', 'SPACE', 'PAUSE', 'LSHIFT', 'RSHIFT', 'LCTRL', 'RCTRL', - 'LALT', 'RALT'] + 'LALT', 'RALT', 'MENU'] win32vk = { 'BACKSPACE': 'BACK', @@ -40,6 +40,7 @@ win32vk = { 'RCTRL': 'RCONTROL', 'LALT': 'LMENU', 'RALT': 'RMENU', +'MENU': 'APPS', } x11xk = {