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.
diff --git a/src/term.c b/src/term.c
index 359c171..4e38bae 100644
--- a/src/term.c
+++ b/src/term.c
@@ -4980,6 +4980,8 @@
* 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 @@
# 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
diff --git a/src/version.c b/src/version.c
index bbb5765..4f9fc87 100644
--- a/src/version.c
+++ b/src/version.c
@@ -772,6 +772,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1324,
+/**/
1323,
/**/
1322,