dwl

My patch set and modifications to dwl
git clone git://git.ethandl.dev/dwl
Log | Files | Refs | README | LICENSE

commit 1fdc65ff930a326c92b58129970026daec400862
parent fbaeb853638a984c69045923eb662d783035762c
Author: Leonardo Hernández Hernández <leohdz172@protonmail.com>
Date:   Sun, 18 Sep 2022 17:25:12 -0500

make more permissive exclusive focus

now you can call focusstack() while a layer surface is focused and when it gets
unmapped the newly focused clients will be actually focused

Diffstat:
Mdwl.c | 10+++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/dwl.c b/dwl.c @@ -1145,9 +1145,6 @@ focusclient(Client *c, int lift) { struct wlr_surface *old = seat->keyboard_state.focused_surface; int i; - /* Do not focus clients if a layer surface is focused */ - if (exclusive_focus) - return; /* Raise client in stacking order if requested */ if (c && lift) @@ -1164,8 +1161,11 @@ focusclient(Client *c, int lift) c->isurgent = 0; client_restack_surface(c); - for (i = 0; i < 4; i++) - wlr_scene_rect_set_color(c->border[i], focuscolor); + /* Don't change border color if there is a exclusive focus + * (at this moment it means that a layer surface is focused) */ + if (!exclusive_focus) + for (i = 0; i < 4; i++) + wlr_scene_rect_set_color(c->border[i], focuscolor); } /* Deactivate old client if focus is changing */