Introduction
Introduction Statistics Contact Development Disclaimer Help
fix: correctly encode mouse buttons >= 8 in X10 and SGR mode - st - simple term…
git clone git://git.suckless.org/st
Log
Files
Refs
README
LICENSE
---
commit 9e68fdbcdb06dfa3d23fe3a7a7f7b59e40e1ea2f
parent 4ef0cbd8b9371f37f7d02ef37b5378b879e6b8bf
Author: Hiltjo Posthuma <[email protected]>
Date: Fri, 19 Mar 2021 11:54:36 +0100
fix: correctly encode mouse buttons >= 8 in X10 and SGR mode
These are typically mapped in X11 to the side-buttons (backward/forwards) on
the mouse. A comparison of the button numbers in SGR mode (first field):
st old:
0 1 2 64 65 66 67 68 69 70
st new (it is the same as xterm now):
0 1 2 64 65 66 67 128 129 130
A script to test and reproduce it, first argument is "h" (on) or "l" (off):
#!/bin/sh
printf '\x1b[?1000%s\x1b[?1006%s' "$1" "$1"
for n in 1 2 3 4 5 6 7 8 9 10; do
printf 'button %d\n' "$n"
xdotool click "$n"
printf '\n\n'
done
Diffstat:
M x.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
---
diff --git a/x.c b/x.c
@@ -387,7 +387,9 @@ mousereport(XEvent *e)
button = 3;
} else {
button -= Button1;
- if (button >= 3)
+ if (button >= 7)
+ button += 128 - 7;
+ else if (button >= 3)
button += 64 - 3;
}
if (e->xbutton.type == ButtonPress) {
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.