diff options
author | nicm <nicm> | 2021-04-13 05:23:34 +0000 |
---|---|---|
committer | nicm <nicm> | 2021-04-13 05:23:34 +0000 |
commit | 715835510beff71cb666600e0c139f82fd14cc2d (patch) | |
tree | 2ae79521f2c047ca6f50d73343710b2b264bd094 /tty-keys.c | |
parent | e6abe55134df1b9dc3b7dd7f3a65dff272a35bb7 (diff) | |
download | rtmux-715835510beff71cb666600e0c139f82fd14cc2d.tar.gz rtmux-715835510beff71cb666600e0c139f82fd14cc2d.tar.bz2 rtmux-715835510beff71cb666600e0c139f82fd14cc2d.zip |
Handle C-Tab correctly with extended keys, GitHub issue 2642.
Diffstat (limited to 'tty-keys.c')
-rw-r--r-- | tty-keys.c | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -953,11 +953,14 @@ tty_keys_extended_key(struct tty *tty, const char *buf, size_t len, * Don't allow both KEYC_CTRL and as an implied modifier. Also convert * C-X into C-x and so on. */ - if (nkey & KEYC_CTRL){ + if (nkey & KEYC_CTRL) { onlykey = (nkey & KEYC_MASK_KEY); - if (onlykey < 32) - onlykey = (nkey & ~KEYC_CTRL); - else { + if (onlykey < 32) { + if (onlykey != 9) + onlykey = (nkey & ~KEYC_CTRL); + else + onlykey = (9|KEYC_CTRL); + } else { if (onlykey >= 97 && onlykey <= 122) onlykey -= 96; else if (onlykey >= 64 && onlykey <= 95) |