When the mode-mouse option is on, support dragging to make a selection

in copy mode.

Also support the scroll wheel, although xterm strangely does not ignore
it in application mouse mode, causing redraw artifacts when scrolling up
(other terminals appear to be better behaved).
This commit is contained in:
Nicholas Marriott
2010-05-31 19:51:29 +00:00
parent e1e120de1c
commit 43fa9a9ba6
5 changed files with 67 additions and 16 deletions

17
tty.c
View File

@ -402,11 +402,18 @@ tty_update_mode(struct tty *tty, int mode)
else
tty_putcode(tty, TTYC_CIVIS);
}
if (changed & MODE_MOUSE) {
if (mode & MODE_MOUSE)
tty_puts(tty, "\033[?1000h");
else
tty_puts(tty, "\033[?1000l");
if (changed & (MODE_MOUSE|MODE_MOUSEMOTION)) {
if (mode & MODE_MOUSE) {
if (mode & MODE_MOUSEMOTION)
tty_puts(tty, "\033[?1003h");
else
tty_puts(tty, "\033[?1000h");
} else {
if (mode & MODE_MOUSEMOTION)
tty_puts(tty, "\033[?1003l");
else
tty_puts(tty, "\033[?1000l");
}
}
if (changed & MODE_KKEYPAD) {
if (mode & MODE_KKEYPAD)