diff options
author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-05-05 23:09:02 -0400 |
---|---|---|
committer | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-05-06 00:19:10 -0400 |
commit | 51403d6d411ca9bc8b4e8d66003a52781e5c698e (patch) | |
tree | b0ab6a9dc5942cb89b45a80a8b7a2694e2c0ba1b /src/nvim/normal.c | |
parent | 4910ac9ab8984551391df78dbf2744e6b4f5ef67 (diff) | |
download | rneovim-51403d6d411ca9bc8b4e8d66003a52781e5c698e.tar.gz rneovim-51403d6d411ca9bc8b4e8d66003a52781e5c698e.tar.bz2 rneovim-51403d6d411ca9bc8b4e8d66003a52781e5c698e.zip |
vim-patch:8.0.1309: cannot use 'balloonexpr' in a terminal
Problem: Cannot use 'balloonexpr' in a terminal.
Solution: Add 'balloonevalterm' and add code to handle mouse movements in a
terminal. Initial implementation for Unix with GUI.
https://github.com/vim/vim/commit/51b0f3701ecb440aa72ab6017c1df6940c0e0f6f
Diffstat (limited to 'src/nvim/normal.c')
-rw-r--r-- | src/nvim/normal.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/nvim/normal.c b/src/nvim/normal.c index c948881eca..616268fcd1 100644 --- a/src/nvim/normal.c +++ b/src/nvim/normal.c @@ -294,6 +294,7 @@ static const struct nv_cmd { { K_LEFTDRAG, nv_mouse, 0, 0 }, { K_LEFTRELEASE, nv_mouse, 0, 0 }, { K_LEFTRELEASE_NM, nv_mouse, 0, 0 }, + { K_MOUSEMOVE, nv_mouse, 0, 0 }, { K_MIDDLEMOUSE, nv_mouse, 0, 0 }, { K_MIDDLEDRAG, nv_mouse, 0, 0 }, { K_MIDDLERELEASE, nv_mouse, 0, 0 }, @@ -2263,6 +2264,10 @@ do_mouse ( break; } + if (c == K_MOUSEMOVE) { + // Mouse moved without a button pressed. + return false; + } /* * Ignore drag and release events if we didn't get a click. @@ -3390,7 +3395,7 @@ bool add_to_showcmd(int c) static int ignore[] = { K_IGNORE, - K_LEFTMOUSE, K_LEFTDRAG, K_LEFTRELEASE, + K_LEFTMOUSE, K_LEFTDRAG, K_LEFTRELEASE, K_MOUSEMOVE, K_MIDDLEMOUSE, K_MIDDLEDRAG, K_MIDDLERELEASE, K_RIGHTMOUSE, K_RIGHTDRAG, K_RIGHTRELEASE, K_MOUSEDOWN, K_MOUSEUP, K_MOUSELEFT, K_MOUSERIGHT, @@ -7036,6 +7041,7 @@ static void nv_g_cmd(cmdarg_T *cap) case K_LEFTMOUSE: case K_LEFTDRAG: case K_LEFTRELEASE: + case K_MOUSEMOVE: case K_RIGHTMOUSE: case K_RIGHTDRAG: case K_RIGHTRELEASE: |