commit 0a7fda6fa0067ee61fee60d123967c3f14431007
parent c4f775fa57ae4d6fdf4be962edb0a1d0c82eaf72
Author: zeertzjq <zeertzjq@outlook.com>
Date: Fri, 4 Aug 2023 09:34:13 +0800
fix(terminal): include modifiers when forwarding mouse (#24549)
Diffstat:
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/src/nvim/terminal.c b/src/nvim/terminal.c
@@ -1444,7 +1444,9 @@ static bool send_mouse_event(Terminal *term, int c)
return false;
}
- mouse_action(term, button, row, col - offset, pressed, 0);
+ VTermModifier mod = VTERM_MOD_NONE;
+ convert_modifiers(c, &mod);
+ mouse_action(term, button, row, col - offset, pressed, mod);
return false;
}
diff --git a/test/functional/terminal/buffer_spec.lua b/test/functional/terminal/buffer_spec.lua
@@ -464,6 +464,10 @@ describe('terminal input', function()
'<S-Up>', '<C-Up>', '<Up>', '<S-Down>', '<C-Down>', '<Down>',
'<S-Left>', '<C-Left>', '<Left>', '<S-Right>', '<C-Right>', '<Right>',
'<S-Home>', '<C-Home>', '<Home>', '<S-End>', '<C-End>', '<End>',
+ '<C-LeftMouse>', '<C-LeftRelease>', '<2-LeftMouse>', '<2-LeftRelease>',
+ '<S-RightMouse>', '<S-RightRelease>', '<2-RightMouse>', '<2-RightRelease>',
+ '<M-MiddleMouse>', '<M-MiddleRelease>', '<2-MiddleMouse>', '<2-MiddleRelease>',
+ '<S-ScrollWheelUp>', '<S-ScrollWheelDown>', '<ScrollWheelUp>', '<ScrollWheelDown>',
}) do
feed('<CR><C-V>' .. key)
retry(nil, nil, function() eq(key, meths.get_current_line()) end)