From e1af3d8d9d2243c9a1ec06549c2e283f91ea6487 Mon Sep 17 00:00:00 2001 From: Derek Foreman Date: Fri, 6 Oct 2017 14:37:45 -0500 Subject: [PATCH] desktop-shell: Handle the fullscreen to maximized case safely When a client transitions from maximized to fullscreen to maximized (run weston-terminal, maximize it, hit f11 twice) we're sending size 0,0 for the unfullscreen configure, which still has maximized set. This results in clients correctly picking any size they like, and weston disconnecting them for it. Instead, pass the correct maximized size. Signed-off-by: Derek Foreman Reviewed-by: Daniel Stone --- desktop-shell/shell.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index 8c9b59ae..a2a93e2f 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -2618,6 +2618,8 @@ set_fullscreen(struct shell_surface *shsurf, bool fullscreen, width = shsurf->output->width; height = shsurf->output->height; + } else if (weston_desktop_surface_get_maximized(desktop_surface)) { + get_maximized_size(shsurf, &width, &height); } weston_desktop_surface_set_fullscreen(desktop_surface, fullscreen); weston_desktop_surface_set_size(desktop_surface, width, height);