mirror of
https://github.com/vim/vim.git
synced 2025-10-05 05:34:07 -04:00
patch 8.0.1324: some xterm sends different mouse move codes
Problem: Some xterm sends different mouse move codes. Solution: Also accept 0x80 as a move event.
This commit is contained in:
14
src/term.c
14
src/term.c
@@ -4980,6 +4980,8 @@ check_termcode(
|
||||
* add 0x08 for ALT
|
||||
* add 0x10 for CTRL
|
||||
* add 0x20 for mouse drag (0x40 is drag with left button)
|
||||
* add 0x40 for mouse move (0x80 is move, 0x81 too)
|
||||
* 0x43 (drag + release) is also move
|
||||
* c == column + ' ' + 1 == column + 33
|
||||
* r == row + ' ' + 1 == row + 33
|
||||
*
|
||||
@@ -5121,9 +5123,15 @@ check_termcode(
|
||||
# endif
|
||||
)
|
||||
{
|
||||
/* Keep the mouse_code before it's changed, so that we
|
||||
* remember that it was a mouse wheel click. */
|
||||
wheel_code = mouse_code;
|
||||
# if defined(UNIX) && defined(FEAT_MOUSE_TTY)
|
||||
if (use_xterm_mouse() > 1 && mouse_code >= 0x80)
|
||||
/* mouse-move event, using MOUSE_DRAG works */
|
||||
mouse_code = MOUSE_DRAG;
|
||||
else
|
||||
# endif
|
||||
/* Keep the mouse_code before it's changed, so that we
|
||||
* remember that it was a mouse wheel click. */
|
||||
wheel_code = mouse_code;
|
||||
}
|
||||
# ifdef FEAT_MOUSE_XTERM
|
||||
else if (held_button == MOUSE_RELEASE
|
||||
|
@@ -771,6 +771,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1324,
|
||||
/**/
|
||||
1323,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user