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 | ext-foreign-toplevel-list: Implement protocol (diff) | |
download | sway-1dc661af176d80db8b283e9c38fd127f71d33052.tar.gz sway-1dc661af176d80db8b283e9c38fd127f71d33052.tar.zst sway-1dc661af176d80db8b283e9c38fd127f71d33052.zip |
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) { | |||
85 | sway_log(SWAY_DEBUG, "Usable area changed, rearranging output"); | 85 | sway_log(SWAY_DEBUG, "Usable area changed, rearranging output"); |
86 | output->usable_area = usable_area; | 86 | output->usable_area = usable_area; |
87 | arrange_output(output); | 87 | arrange_output(output); |
88 | } else { | ||
89 | arrange_popups(root->layers.popup); | ||
88 | } | 90 | } |
89 | } | 91 | } |
90 | 92 | ||
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) { | |||
606 | } | 606 | } |
607 | } | 607 | } |
608 | 608 | ||
609 | static void arrange_popup(struct wlr_scene_tree *popup) { | 609 | void arrange_popups(struct wlr_scene_tree *popups) { |
610 | struct wlr_scene_node *node; | 610 | struct wlr_scene_node *node; |
611 | wl_list_for_each(node, &popup->children, link) { | 611 | wl_list_for_each(node, &popups->children, link) { |
612 | struct sway_xdg_popup *popup = scene_descriptor_try_get(node, | 612 | struct sway_xdg_popup *popup = scene_descriptor_try_get(node, |
613 | SWAY_SCENE_DESC_POPUP); | 613 | SWAY_SCENE_DESC_POPUP); |
614 | 614 | ||
@@ -679,7 +679,7 @@ static void arrange_root(struct sway_root *root) { | |||
679 | } | 679 | } |
680 | } | 680 | } |
681 | 681 | ||
682 | arrange_popup(root->layers.popup); | 682 | arrange_popups(root->layers.popup); |
683 | } | 683 | } |
684 | 684 | ||
685 | /** | 685 | /** |