mirror of
https://github.com/brl/mutter.git
synced 2024-11-21 15:40:41 -05:00
window-wayland: Don't use grab op for some other window when resizing
When resizing a window interactively, we'll set a grab operation and a grab window, among other things. If we're resizing (including setting initial size, i.e. mapping) another window, that didn't change position, don't use the gravity of the grab operation when resizing our own window. This fixes an issue with jumpy popup position when moving a previously mapped gtk popover. https://gitlab.gnome.org/GNOME/mutter/merge_requests/999
This commit is contained in:
parent
a68e6972a2
commit
ac01e69a67
@ -976,7 +976,10 @@ meta_window_wayland_finish_move_resize (MetaWindow *window,
|
|||||||
if (rect.width != window->rect.width || rect.height != window->rect.height)
|
if (rect.width != window->rect.width || rect.height != window->rect.height)
|
||||||
flags |= META_MOVE_RESIZE_RESIZE_ACTION;
|
flags |= META_MOVE_RESIZE_RESIZE_ACTION;
|
||||||
|
|
||||||
gravity = meta_resize_gravity_from_grab_op (window->display->grab_op);
|
if (window->display->grab_window == window)
|
||||||
|
gravity = meta_resize_gravity_from_grab_op (window->display->grab_op);
|
||||||
|
else
|
||||||
|
gravity = META_GRAVITY_STATIC;
|
||||||
meta_window_move_resize_internal (window, flags, gravity, rect);
|
meta_window_move_resize_internal (window, flags, gravity, rect);
|
||||||
|
|
||||||
g_clear_pointer (&acked_configuration, meta_wayland_window_configuration_free);
|
g_clear_pointer (&acked_configuration, meta_wayland_window_configuration_free);
|
||||||
|
Loading…
Reference in New Issue
Block a user