From 1765bf8cc2adc8fb2218a02e01652d6659402ac1 Mon Sep 17 00:00:00 2001 From: tokyo4j Date: Tue, 23 Jul 2024 19:09:48 +0900 Subject: [PATCH] layer-shell: stop sending configure events on surface creation With wlroots 0.18, layer-shell's new_surface event is emitted on zwlr_layer_shell_v1.get_layer_surface request rather than the first commit. This change layer-shell clients like fuzzel to flicker on launch because labwc was sending a configure event with fullscreen geometry due to the absence of geometry hints on get_layer_surface requests. This commit removes the code that updates the usable area from new_surface handler, preventing unintended configure events with fullscreen geometry. --- src/layers.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/layers.c b/src/layers.c index 849e8d34..a5ca7315 100644 --- a/src/layers.c +++ b/src/layers.c @@ -579,15 +579,6 @@ handle_new_layer_surface(struct wl_listener *listener, void *data) surface->node_destroy.notify = handle_node_destroy; wl_signal_add(&surface->scene_layer_surface->tree->node.events.destroy, &surface->node_destroy); - - /* - * Temporarily set the layer's current state to pending so that - * it can easily be arranged. - */ - struct wlr_layer_surface_v1_state old_state = layer_surface->current; - layer_surface->current = layer_surface->pending; - output_update_usable_area(output); - layer_surface->current = old_state; } void