diff options
author | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-04-03 17:18:05 -0500 |
---|---|---|
committer | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-04-29 17:45:02 -0500 |
commit | 3a4b7d104ff8bfc14862b7e41bcacb35677306a4 (patch) | |
tree | 4c7094e052d8f8e1329891122cc678f6ecd4f196 | |
parent | d071a899f3b302f3fbaa85c378d0854b7fa39e8e (diff) |
restack xwayland surface on focusclient()
-rw-r--r-- | dwl.c | 9 |
1 files changed, 9 insertions, 0 deletions
@@ -1135,6 +1135,15 @@ focusclient(Client *c, int lift) return; } +#ifdef XWAYLAND + /* This resolves an issue where the last spawned xwayland client + * receives all pointer activity. + */ + if (c->type == X11Managed) + wlr_xwayland_surface_restack(c->surface.xwayland, NULL, + XCB_STACK_MODE_ABOVE); +#endif + /* Have a client, so focus its top-level wlr_surface */ kb = wlr_seat_get_keyboard(seat); wlr_seat_keyboard_notify_enter(seat, client_surface(c), |