diff options
| author | Alexander Orzechowski <alex@ozal.ski> | 2024-01-23 10:10:42 -0500 | 
|---|---|---|
| committer | Kirill Primak <vyivel@eclair.cafe> | 2024-02-12 19:19:22 +0300 | 
| commit | 1dc661af176d80db8b283e9c38fd127f71d33052 (patch) | |
| tree | baf75520b0794964485e1bc1c8fa49897506f0eb /sway | |
| parent | 1b5515400d0e10c8e1205b88cfc0e46ecb5faa96 (diff) | |
| download | sway-1dc661af176d80db8b283e9c38fd127f71d33052.tar.xz | |
layer_shell: Arrange popups even if exclusive zone doesn't change
Diffstat (limited to 'sway')
| -rw-r--r-- | sway/desktop/layer_shell.c | 2 | ||||
| -rw-r--r-- | sway/desktop/transaction.c | 6 | 
2 files changed, 5 insertions, 3 deletions
diff --git a/sway/desktop/layer_shell.c b/sway/desktop/layer_shell.c index c71abce7..9a35ef95 100644 --- a/sway/desktop/layer_shell.c +++ b/sway/desktop/layer_shell.c @@ -85,6 +85,8 @@ void arrange_layers(struct sway_output *output) {  		sway_log(SWAY_DEBUG, "Usable area changed, rearranging output");  		output->usable_area = usable_area;  		arrange_output(output); +	} else { +		arrange_popups(root->layers.popup);  	}  } diff --git a/sway/desktop/transaction.c b/sway/desktop/transaction.c index acc3e3f9..c1a988ca 100644 --- a/sway/desktop/transaction.c +++ b/sway/desktop/transaction.c @@ -606,9 +606,9 @@ static void arrange_output(struct sway_output *output, int width, int height) {  	}  } -static void arrange_popup(struct wlr_scene_tree *popup) { +void arrange_popups(struct wlr_scene_tree *popups) {  	struct wlr_scene_node *node; -	wl_list_for_each(node, &popup->children, link) { +	wl_list_for_each(node, &popups->children, link) {  		struct sway_xdg_popup *popup = scene_descriptor_try_get(node,  			SWAY_SCENE_DESC_POPUP); @@ -679,7 +679,7 @@ static void arrange_root(struct sway_root *root) {  		}  	} -	arrange_popup(root->layers.popup); +	arrange_popups(root->layers.popup);  }  /**  | 
