[mutter] window-wayland: Don't use grab op for some other window when resizing
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] window-wayland: Don't use grab op for some other window when resizing
- Date: Thu, 26 Mar 2020 16:58:39 +0000 (UTC)
commit ac01e69a67642d255525e1a428a88a0bb6efc957
Author: Jonas Ã…dahl <jadahl gmail com>
Date: Thu Jan 9 17:55:56 2020 +0100
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
src/wayland/meta-window-wayland.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
---
diff --git a/src/wayland/meta-window-wayland.c b/src/wayland/meta-window-wayland.c
index b6b949e36..47cbf1897 100644
--- a/src/wayland/meta-window-wayland.c
+++ b/src/wayland/meta-window-wayland.c
@@ -976,7 +976,10 @@ meta_window_wayland_finish_move_resize (MetaWindow *window,
if (rect.width != window->rect.width || rect.height != window->rect.height)
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);
g_clear_pointer (&acked_configuration, meta_wayland_window_configuration_free);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]