summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJonas Ådahl <jadahl@gmail.com>2019-05-24 10:52:40 +0200
committerFlorian Müllner <florian.muellner@gmail.com>2019-05-24 15:07:03 +0000
commit439afb3f19adff751d8a643dc57e07046190483a (patch)
treecd1de360b73561a85cfd97359df102271610714a /src
parentb01edc22f3cf816ec2bbc4e777fb44525a8456a8 (diff)
downloadmutter-439afb3f19adff751d8a643dc57e07046190483a.tar.gz
window: Move all attached windows with parent
We'd break the loop for moving attached windows at the first window, meaning we'd only ever move a single attached dialogs or popup if it was the first window in the list. This doesn't work out well when there are multiple popups open, so don't break out of the loop at all until all windows are potentially moved. This fixes an issue in gtk4 where one or more non-grabbing popups would end up unattached if there were more than one and the parent window was moved. https://gitlab.gnome.org/GNOME/mutter/merge_requests/592
Diffstat (limited to 'src')
-rw-r--r--src/core/window.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/window.c b/src/core/window.c
index ff564250e..89408081d 100644
--- a/src/core/window.c
+++ b/src/core/window.c
@@ -3812,13 +3812,13 @@ maybe_move_attached_window (MetaWindow *window,
void *data)
{
if (window->hidden)
- return FALSE;
+ return G_SOURCE_CONTINUE;
if (meta_window_is_attached_dialog (window) ||
meta_window_get_placement_rule (window))
meta_window_reposition (window);
- return FALSE;
+ return G_SOURCE_CONTINUE;
}
/**