scene/layer_shell: Ignore unmapped exclusion zone

Only the exclusion zone for mapped layer shell surfaces should be respected. In
particular, a layer shell surface that was mapped with an exclusion zone but is
now unmapped should not adjust the usable area.

Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3471
This commit is contained in:
Kenny Levinsen 2022-08-02 18:28:06 +02:00
parent 7abe8352db
commit 3baf2a6bcf

View file

@ -125,7 +125,7 @@ void wlr_scene_layer_surface_v1_configure(
wlr_scene_node_set_position(&scene_layer_surface->tree->node, box.x, box.y);
wlr_layer_surface_v1_configure(layer_surface, box.width, box.height);
if (state->exclusive_zone > 0) {
if (layer_surface->mapped && state->exclusive_zone > 0) {
layer_surface_exclusive_zone(state, usable_area);
}
}