summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Ã…dahl <jadahl@gmail.com>2020-09-18 10:26:42 +0200
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2020-09-18 11:37:23 +0000
commitdb7967327ad35b7d1ce1e137e5eaffc5aaa0598c (patch)
tree52908279fd1d740fdbfa4d563ee91b540903c4cb
parentaa638f4d4833f3d3df29835b1b5d146ffa4f80e8 (diff)
downloadmutter-db7967327ad35b7d1ce1e137e5eaffc5aaa0598c.tar.gz
wayland/window: Always flag acked move/resize as 'moved' if moved
We only did this if we weren't currently doing an interactive resize, but since the finish_move_resize() is not the actual interactive resize but the acknowledgment of the configure event that was emitted as a result, we shouldn't limit ourself to the same flags used during resize. This fixes temporarly "stuck" position of attached modal dialogs while they are being resized. Closes: https://gitlab.gnome.org/GNOME/mutter/-/issues/1163 https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1446
-rw-r--r--src/wayland/meta-window-wayland.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c
index cef8d44a4..a942dc9a3 100644
--- a/src/wayland/meta-window-wayland.c
+++ b/src/wayland/meta-window-wayland.c
@@ -951,9 +951,6 @@ meta_window_wayland_finish_move_resize (MetaWindow *window,
rect.x += dx;
rect.y += dy;
-
- if (rect.x != window->rect.x || rect.y != window->rect.y)
- flags |= META_MOVE_RESIZE_MOVE_ACTION;
}
else
{
@@ -964,6 +961,9 @@ meta_window_wayland_finish_move_resize (MetaWindow *window,
}
}
+ if (rect.x != window->rect.x || rect.y != window->rect.y)
+ flags |= META_MOVE_RESIZE_MOVE_ACTION;
+
if (wl_window->has_pending_state_change && acked_configuration)
{
flags |= META_MOVE_RESIZE_WAYLAND_STATE_CHANGED;