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

previously it worked because we checked in every commit the layer
in a353eee2cac0378a4201e408a3417aa107a7f647 and
b100b446b8c82bc2dcdbb40856ab87ed4a4ad594
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->scene_layer = wlr_scene_layer_surface_v1_create(scene_layer, layer_surface);
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;