mirror of
https://github.com/brl/mutter.git
synced 2024-11-28 02:50:41 -05:00
window: Queue resize if window is maximized on wayland
When multiple configure requests sent to the wayland client within a sort period, maximized windows may end up in wrong position and cover struts. To avoid this, queue a resize when the resize event sent by the wayland client results a changed size or position to ensure that the final size and position will be always right. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3601>
This commit is contained in:
parent
d434518303
commit
35335e65af
@ -3928,6 +3928,14 @@ meta_window_move_resize_internal (MetaWindow *window,
|
||||
|
||||
if (flags & META_MOVE_RESIZE_WAYLAND_CLIENT_RESIZE)
|
||||
meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
|
||||
|
||||
/* This is a workaround for #1627. We still don't have any tests that can
|
||||
* reproduce this issue reliably and this is not a proper fix! */
|
||||
if (flags & META_MOVE_RESIZE_WAYLAND_FINISH_MOVE_RESIZE &&
|
||||
(result & META_MOVE_RESIZE_RESULT_MOVED ||
|
||||
result & META_MOVE_RESIZE_RESULT_RESIZED) &&
|
||||
(window->maximized_horizontally || window->maximized_vertically))
|
||||
meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user