patch 8.0.1075: MS-Windows: mouse does not work in terminal
Problem: MS-Windows: mouse does not work in terminal.
Solution: Force the winpty mouse on. (Yasuhiro Matsumoto, closes #2072)
diff --git a/src/terminal.c b/src/terminal.c
index 9c4e759..eddca8e 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -2972,11 +2972,13 @@
#define WINPTY_SPAWN_FLAG_AUTO_SHUTDOWN 1ul
#define WINPTY_SPAWN_FLAG_EXIT_AFTER_SHUTDOWN 2ull
+#define WINPTY_MOUSE_MODE_FORCE 2
void* (*winpty_config_new)(UINT64, void*);
void* (*winpty_open)(void*, void*);
void* (*winpty_spawn_config_new)(UINT64, void*, LPCWSTR, void*, void*, void*);
BOOL (*winpty_spawn)(void*, void*, HANDLE*, HANDLE*, DWORD*, void*);
+void (*winpty_config_set_mouse_mode)(void*, int);
void (*winpty_config_set_initial_size)(void*, int, int);
LPCWSTR (*winpty_conin_name)(void*);
LPCWSTR (*winpty_conout_name)(void*);
@@ -3007,7 +3009,10 @@
{"winpty_conerr_name", (FARPROC*)&winpty_conerr_name},
{"winpty_config_free", (FARPROC*)&winpty_config_free},
{"winpty_config_new", (FARPROC*)&winpty_config_new},
- {"winpty_config_set_initial_size", (FARPROC*)&winpty_config_set_initial_size},
+ {"winpty_config_set_mouse_mode",
+ (FARPROC*)&winpty_config_set_mouse_mode},
+ {"winpty_config_set_initial_size",
+ (FARPROC*)&winpty_config_set_initial_size},
{"winpty_conin_name", (FARPROC*)&winpty_conin_name},
{"winpty_conout_name", (FARPROC*)&winpty_conout_name},
{"winpty_error_free", (FARPROC*)&winpty_error_free},
@@ -3105,6 +3110,8 @@
if (term->tl_winpty_config == NULL)
goto failed;
+ winpty_config_set_mouse_mode(term->tl_winpty_config,
+ WINPTY_MOUSE_MODE_FORCE);
winpty_config_set_initial_size(term->tl_winpty_config,
term->tl_cols, term->tl_rows);
term->tl_winpty = winpty_open(term->tl_winpty_config, &winpty_err);
diff --git a/src/version.c b/src/version.c
index 2ab1b17..f8a10e3 100644
--- a/src/version.c
+++ b/src/version.c
@@ -770,6 +770,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1075,
+/**/
1074,
/**/
1073,