aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Estabrooks <sean.estabrooks@gmail.com>2023-07-25 10:56:51 +0100
committerPeter Maydell <peter.maydell@linaro.org>2023-07-25 10:56:51 +0100
commit9b579543d7b01666218d8ae01561a96757678eb1 (patch)
tree894d4505acec8e5cf06423e59e1a158e6ac8bd1b
parent5d78893f39caf94c8587141e2219b57a7d63dd5c (diff)
For curses display, recognize a few more control keys
The curses display handles most control-X keys, and translates them into their corresponding keycode. Here we recognize a few that are missing, Ctrl-@ (null), Ctrl-\ (backslash), Ctrl-] (right bracket), Ctrl-^ (caret), Ctrl-_ (underscore). Signed-off-by: Sean Estabrooks <sean.estabrooks@gmail.com> Message-id: CAHyVn3Bh9CRgDuOmf7G7Ngwamu8d4cVozAcB2i4ymnnggBXNmg@mail.gmail.com Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--ui/curses_keys.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/ui/curses_keys.h b/ui/curses_keys.h
index 71e04acdc7..88a2208ed1 100644
--- a/ui/curses_keys.h
+++ b/ui/curses_keys.h
@@ -210,6 +210,12 @@ static const int _curses2keycode[CURSES_CHARS] = {
['N' - '@'] = 49 | CNTRL, /* Control + n */
/* Control + m collides with the keycode for Enter */
+ ['@' - '@'] = 3 | CNTRL, /* Control + @ */
+ /* Control + [ collides with the keycode for Escape */
+ ['\\' - '@'] = 43 | CNTRL, /* Control + Backslash */
+ [']' - '@'] = 27 | CNTRL, /* Control + ] */
+ ['^' - '@'] = 7 | CNTRL, /* Control + ^ */
+ ['_' - '@'] = 12 | CNTRL, /* Control + Underscore */
};
static const int _curseskey2keycode[CURSES_KEYS] = {