csi: implement CSI ? 1007 h/l - alternateScroll

When enabled, mouse scrolls in the alternate screen are converted to
up/down key presses.
This commit is contained in:
Daniel Eklöf 2019-08-19 21:16:47 +02:00
parent 9029478e8c
commit 4168f91d40
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
3 changed files with 31 additions and 6 deletions

8
csi.c
View file

@ -713,6 +713,10 @@ csi_dispatch(struct terminal *term, uint8_t final)
term->mouse_reporting = MOUSE_SGR;
break;
case 1007:
term->alt_scrolling = true;
break;
case 1015:
term->mouse_reporting = MOUSE_URXVT;
break;
@ -802,6 +806,10 @@ csi_dispatch(struct terminal *term, uint8_t final)
term->focus_events = false;
break;
case 1007:
term->alt_scrolling = false;
break;
case 1036:
/* metaSendsEscape - we always send escape */
LOG_WARN("unimplemented: meta does *not* send escape");