summaryrefslogtreecommitdiffstats
path: root/server-client.c
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2024-04-10 10:01:13 +0100
committerThomas Adam <thomas@xteddy.org>2024-04-10 10:01:13 +0100
commit43530d4397f94beed27acb8f5610338b6dbcc05a (patch)
tree2bcadaad156d73255a1167a4d00fcf6a4371ce21 /server-client.c
parent4bb6da75bada96b3fa5086487ad0f241dea874bb (diff)
parent553d4cba794b4f81dd42ba139f8dfb54fcd13c16 (diff)
Merge branch 'obsd-master'
Diffstat (limited to 'server-client.c')
-rw-r--r--server-client.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/server-client.c b/server-client.c
index a7494503..449a9bcc 100644
--- a/server-client.c
+++ b/server-client.c
@@ -622,6 +622,8 @@ server_client_check_mouse(struct client *c, struct key_event *event)
} else if (MOUSE_RELEASE(m->b)) {
type = UP;
x = m->x, y = m->y, b = m->lb;
+ if (m->sgr_type == 'm')
+ b = m->sgr_b;
log_debug("up at %u,%u", x, y);
} else {
if (c->flags & CLIENT_DOUBLECLICK) {
@@ -642,7 +644,10 @@ server_client_check_mouse(struct client *c, struct key_event *event)
log_debug("triple-click at %u,%u", x, y);
goto have_event;
}
- } else {
+ }
+
+ /* DOWN is the only remaining event type. */
+ if (type == NOTYPE) {
type = DOWN;
x = m->x, y = m->y, b = m->b;
log_debug("down at %u,%u", x, y);