diff options
author | dm1try <me@dmitry.it> | 2021-12-09 19:44:09 +0300 |
---|---|---|
committer | dm1try <me@dmitry.it> | 2021-12-10 00:53:30 +0300 |
commit | c96f7e29dc69976c2f5efa0a59710ef8416bb982 (patch) | |
tree | 009d2f1595001c027a66b13a583fd4b0fd8797ba /src | |
parent | 2fe60905f6e12b3cae5c9ca2d1456fe23501be61 (diff) | |
download | rneovim-c96f7e29dc69976c2f5efa0a59710ef8416bb982.tar.gz rneovim-c96f7e29dc69976c2f5efa0a59710ef8416bb982.tar.bz2 rneovim-c96f7e29dc69976c2f5efa0a59710ef8416bb982.zip |
fix(terminal): ignore left-release mouse action
if it is not proccesed by the terminal program
to prevent leaving Terminal mode after using
a mouse for window switching
closes #9483
closes #8691
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/terminal.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c index afebda4948..c272fdb7b0 100644 --- a/src/nvim/terminal.c +++ b/src/nvim/terminal.c @@ -1296,6 +1296,12 @@ static bool send_mouse_event(Terminal *term, int c) return mouse_win == curwin; } + // ignore left release action if it was not proccessed above + // to prevent leaving Terminal mode after entering to it using a mouse + if (c == K_LEFTRELEASE && mouse_win->w_buffer->terminal == term) { + return false; + } + end: ins_char_typebuf(c); return true; |