diff options
author | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-09-18 17:23:07 -0500 |
---|---|---|
committer | Leonardo Hernández Hernández <leohdz172@protonmail.com> | 2022-09-18 17:23:07 -0500 |
commit | fbaeb853638a984c69045923eb662d783035762c (patch) | |
tree | b957fd71d6d7259e4217dfc10eda1baf1fe6f5e0 | |
parent | 570e6e2c2763bc3a7bd270a9571cfedeb1083fef (diff) |
now really fix clients not being focused after unmapping a layer surface
-rw-r--r-- | dwl.c | 9 |
1 files changed, 4 insertions, 5 deletions
@@ -617,7 +617,7 @@ arrangelayers(Monitor *m) wl_list_for_each_reverse(layersurface, &m->layers[layers_above_shell[i]], link) { if (layersurface->layer_surface->current.keyboard_interactive && - layersurface->layer_surface->mapped) { + layersurface->mapped) { /* Deactivate the focused client. */ focusclient(NULL, 0); exclusive_focus = layersurface; @@ -1177,10 +1177,9 @@ focusclient(Client *c, int lift) struct wlr_layer_surface_v1 *wlr_layer_surface = wlr_layer_surface_v1_from_wlr_surface(old); - if (wlr_layer_surface && wlr_layer_surface->mapped && ( - wlr_layer_surface->current.layer == ZWLR_LAYER_SHELL_V1_LAYER_TOP || - wlr_layer_surface->current.layer == ZWLR_LAYER_SHELL_V1_LAYER_OVERLAY - )) + if (wlr_layer_surface && ((LayerSurface *)wlr_layer_surface->data)->mapped + && (wlr_layer_surface->current.layer == ZWLR_LAYER_SHELL_V1_LAYER_TOP + || wlr_layer_surface->current.layer == ZWLR_LAYER_SHELL_V1_LAYER_OVERLAY)) return; } else { Client *w; |