[mutter] wayland/window: Always flag acked move/resize as 'moved' if moved



commit db7967327ad35b7d1ce1e137e5eaffc5aaa0598c
Author: Jonas Ã…dahl <jadahl gmail com>
Date:   Fri Sep 18 10:26:42 2020 +0200

    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

 src/wayland/meta-window-wayland.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c
index cef8d44a44..a942dc9a3f 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;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]