mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-08 01:04:06 +01:00
Look for mice and xterm keys before standard function keys as they are less
likely to be partial versions.
This commit is contained in:
parent
29a5931c6a
commit
f27fefd7b8
18
tty-keys.c
18
tty-keys.c
@ -453,14 +453,7 @@ tty_keys_next(struct tty *tty)
|
||||
goto handle_key;
|
||||
}
|
||||
|
||||
/* Look for matching key string and return if found. */
|
||||
tk = tty_keys_find(tty, buf + 1, len - 1, &size);
|
||||
if (tk != NULL) {
|
||||
key = tk->key;
|
||||
goto found_key;
|
||||
}
|
||||
|
||||
/* Not found. Is this a mouse key press? */
|
||||
/* Is this a mouse key press? */
|
||||
switch (tty_keys_mouse(buf, len, &size, &mouse)) {
|
||||
case 0: /* yes */
|
||||
evbuffer_drain(tty->event->input, size);
|
||||
@ -472,7 +465,7 @@ tty_keys_next(struct tty *tty)
|
||||
goto partial_key;
|
||||
}
|
||||
|
||||
/* Not found. Try to parse a key with an xterm-style modifier. */
|
||||
/* Try to parse a key with an xterm-style modifier. */
|
||||
switch (xterm_keys_find(buf, len, &size, &key)) {
|
||||
case 0: /* found */
|
||||
evbuffer_drain(tty->event->input, size);
|
||||
@ -483,6 +476,13 @@ tty_keys_next(struct tty *tty)
|
||||
goto partial_key;
|
||||
}
|
||||
|
||||
/* Look for matching key string and return if found. */
|
||||
tk = tty_keys_find(tty, buf + 1, len - 1, &size);
|
||||
if (tk != NULL) {
|
||||
key = tk->key;
|
||||
goto found_key;
|
||||
}
|
||||
|
||||
/* Skip the escape. */
|
||||
buf++;
|
||||
len--;
|
||||
|
Loading…
Reference in New Issue
Block a user