diff src/term.c @ 11563:2547bbe6716e v8.0.0664

patch 8.0.0664: mouse does not work in tmux commit https://github.com/vim/vim/commit/6d006f9e950364898240b7a6358516bbf73fe458 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jun 23 22:35:34 2017 +0200 patch 8.0.0664: mouse does not work in tmux Problem: Mouse does not work in tmux. (lilydjwg) Solution: Add flag for SGR release being present.
author Christian Brabandt <cb@256bit.org>
date Fri, 23 Jun 2017 22:45:04 +0200
parents 7e5e76d8d451
children 91519a14ec1f
line wrap: on
line diff
--- a/src/term.c
+++ b/src/term.c
@@ -1801,9 +1801,8 @@ set_termname(char_u *term)
      * The termcode for the mouse is added as a side effect in option.c.
      */
     {
-	char_u	*p;
-
-	p = (char_u *)"";
+	char_u	*p = (char_u *)"";
+
 #  ifdef FEAT_MOUSE_XTERM
 	if (use_xterm_like_mouse(term))
 	{
@@ -1944,6 +1943,7 @@ set_termname(char_u *term)
 #  define HMT_PTERM	16
 #  define HMT_URXVT	32
 #  define HMT_SGR	64
+#  define HMT_SGR_REL	128
 static int has_mouse_termcode = 0;
 # endif
 
@@ -1987,6 +1987,8 @@ set_mouse_termcode(
 #   ifdef FEAT_MOUSE_SGR
     if (n == KS_SGR_MOUSE)
 	has_mouse_termcode |= HMT_SGR;
+    else if (n == KS_SGR_MOUSE_RELEASE)
+	has_mouse_termcode |= HMT_SGR_REL;
     else
 #   endif
 	has_mouse_termcode |= HMT_NORMAL;
@@ -2034,6 +2036,8 @@ del_mouse_termcode(
 #   ifdef FEAT_MOUSE_SGR
     if (n == KS_SGR_MOUSE)
 	has_mouse_termcode &= ~HMT_SGR;
+    else if (n == KS_SGR_MOUSE_RELEASE)
+	has_mouse_termcode &= ~HMT_SGR_REL;
     else
 #   endif
 	has_mouse_termcode &= ~HMT_NORMAL;