summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Ådahl <jadahl@gmail.com>2020-09-18 10:26:42 +0200
committerJonas Ådahl <jadahl@gmail.com>2020-09-30 09:25:12 +0200
commit4125acf8cd8e69a13af3c2b24b1e595872657114 (patch)
tree34f7d905b619952341e2eec0c08daa8665630351
parent3536ad08c4de9666e426524e6e9ee18dbba93f2a (diff)
downloadmutter-4125acf8cd8e69a13af3c2b24b1e595872657114.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 (cherry picked from commit db7967327ad35b7d1ce1e137e5eaffc5aaa0598c)
-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 47cbf1897..ab5b7f86e 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;