wayland/xdg-shell: Do not maximize if not possible
On X11, if a window cannot be maximized because its minimum size is already larger than the output size, a request to maximize will be ignored. On Wayland, however, we would still honor the maximize request and switch the window state to maximized, without actually moving the window which leads to weird visual effects, as the window end up being maximized in-place. To avoid this, make sure the window has the maximize functionality available prior to change its state in xdg-shell `set_maximized` request. Closes: https://gitlab.gnome.org/GNOME/mutter/issues/463
This commit is contained in:
parent
c3b9ef7bf5
commit
6fe46cac60
2 changed files with 6 additions and 0 deletions
|
@ -397,6 +397,9 @@ zxdg_toplevel_v6_set_maximized (struct wl_client *client,
|
|||
if (!window)
|
||||
return;
|
||||
|
||||
if (!window->has_maximize_func)
|
||||
return;
|
||||
|
||||
meta_window_force_placement (window, TRUE);
|
||||
meta_window_maximize (window, META_MAXIMIZE_BOTH);
|
||||
}
|
||||
|
|
|
@ -393,6 +393,9 @@ xdg_toplevel_set_maximized (struct wl_client *client,
|
|||
if (!window)
|
||||
return;
|
||||
|
||||
if (!window->has_maximize_func)
|
||||
return;
|
||||
|
||||
meta_window_force_placement (window, TRUE);
|
||||
meta_window_maximize (window, META_MAXIMIZE_BOTH);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue