From 14d4a0a1c6773c6bab8c87ff47286575df996094 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Thu, 8 Aug 2019 17:58:50 +0200 Subject: [PATCH] term: don't send mouse events if shift is being pressed --- terminal.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/terminal.c b/terminal.c index 622cd47a..b99d01f0 100644 --- a/terminal.c +++ b/terminal.c @@ -470,6 +470,11 @@ void term_mouse_down(struct terminal *term, int button, int row, int col, bool shift, bool alt, bool ctrl) { + if (term->kbd.shift) { + /* "raw" mouse mode */ + return; + } + /* Map libevent button event code to X button number */ int xbutton = linux_mouse_button_to_x(button); if (xbutton == -1) @@ -498,6 +503,11 @@ void term_mouse_up(struct terminal *term, int button, int row, int col, bool shift, bool alt, bool ctrl) { + if (term->kbd.shift) { + /* "raw" mouse mode */ + return; + } + /* Map libevent button event code to X button number */ int xbutton = linux_mouse_button_to_x(button); if (xbutton == -1) @@ -531,6 +541,11 @@ void term_mouse_motion(struct terminal *term, int button, int row, int col, bool shift, bool alt, bool ctrl) { + if (term->kbd.shift) { + /* "raw" mouse mode */ + return; + } + int encoded = 0; if (button != 0) {