make sure popups of a layer surface are in the correct layer

previously it worked because we checked in every commit the layer
in a353eee2ca and
b100b446b8
we changed the way it's handled and now if the layer surface does not change
the layer we don't it either. meaning that if it was created in the bottom
layer and did not change the layer the popups would show behind xdg clients
This commit is contained in:
Leonardo Hernández Hernández 2023-12-07 14:09:10 -06:00
parent 2b3504e439
commit 28ec843aee
No known key found for this signature in database
GPG key ID: E538897EE11B9624

3
dwl.c
View file

@ -814,7 +814,8 @@ createlayersurface(struct wl_listener *listener, void *data)
l->mon = layer_surface->output->data; l->mon = layer_surface->output->data;
l->scene_layer = wlr_scene_layer_surface_v1_create(scene_layer, layer_surface); l->scene_layer = wlr_scene_layer_surface_v1_create(scene_layer, layer_surface);
l->scene = l->scene_layer->tree; l->scene = l->scene_layer->tree;
l->popups = surface->data = wlr_scene_tree_create(scene_layer); l->popups = surface->data = wlr_scene_tree_create(layer_surface->current.layer
< ZWLR_LAYER_SHELL_V1_LAYER_TOP ? layers[LyrTop] : scene_layer);
l->scene->node.data = l; l->scene->node.data = l;