warpcursor: fix annoying menu bug, rebase on v0.6

This commit is contained in:
Ben Collerson 2024-07-16 10:40:49 +10:00
parent e5f9cce3f2
commit 0303d84424
2 changed files with 9 additions and 17 deletions

View File

@ -8,7 +8,7 @@ config flag as I think it is unnecessary.
### Download
- [git branch](https://codeberg.org/bencc/dwl/src/branch/warpcursor)
- [2024-06-26](https://codeberg.org/dwl/dwl-patches/raw/branch/main/patches/warpcursor/warpcursor.patch)
- [v0.6](https://codeberg.org/dwl/dwl-patches/raw/branch/main/patches/warpcursor/warpcursor.patch)
### Authors
- [Faerryn](https://github.com/faerryn)

View File

@ -1,17 +1,17 @@
From fd0c1ff2c8373c9cf76f893b331f383299e6ae38 Mon Sep 17 00:00:00 2001
From 65075bed3ba08ae2e2a05155d7fffd23306d34fb Mon Sep 17 00:00:00 2001
From: Ben Collerson <benc@benc.cc>
Date: Thu, 4 Jan 2024 20:30:01 +1000
Subject: [PATCH] warpcursor
---
dwl.c | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
dwl.c | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/dwl.c b/dwl.c
index 521b07a6..37ec0b0f 100644
index 145fd018..30ecf969 100644
--- a/dwl.c
+++ b/dwl.c
@@ -350,6 +350,7 @@ static void urgent(struct wl_listener *listener, void *data);
@@ -347,6 +347,7 @@ static void urgent(struct wl_listener *listener, void *data);
static void view(const Arg *arg);
static void virtualkeyboard(struct wl_listener *listener, void *data);
static void virtualpointer(struct wl_listener *listener, void *data);
@ -19,7 +19,7 @@ index 521b07a6..37ec0b0f 100644
static Monitor *xytomon(double x, double y);
static void xytonode(double x, double y, struct wlr_surface **psurface,
Client **pc, LayerSurface **pl, double *nx, double *ny);
@@ -517,6 +518,7 @@ arrange(Monitor *m)
@@ -514,6 +515,7 @@ arrange(Monitor *m)
m->lt[m->sellt]->arrange(m);
motionnotify(0, NULL, 0, 0, 0, 0);
checkidleinhibitor(NULL);
@ -27,7 +27,7 @@ index 521b07a6..37ec0b0f 100644
}
void
@@ -1314,6 +1316,10 @@ focusclient(Client *c, int lift)
@@ -1323,6 +1325,10 @@ focusclient(Client *c, int lift)
if (locked)
return;
@ -38,15 +38,7 @@ index 521b07a6..37ec0b0f 100644
/* Raise client in stacking order if requested */
if (c && lift)
wlr_scene_node_raise_to_top(&c->scene->node);
@@ -1659,6 +1665,7 @@ mapnotify(struct wl_listener *listener, void *data)
focusclient(c, 1);
exclusive_focus = c;
}
+ warpcursor(c);
goto unset_fullscreen;
}
@@ -2921,6 +2928,27 @@ virtualpointer(struct wl_listener *listener, void *data)
@@ -2927,6 +2933,27 @@ virtualpointer(struct wl_listener *listener, void *data)
wlr_cursor_map_input_to_output(cursor, &pointer.base, event->suggested_output);
}