From 06eb7271a92fb677837811d42452d38d6fb68f25 Mon Sep 17 00:00:00 2001 From: Olivier Fourdan Date: Fri, 10 Nov 2023 09:17:20 +0100 Subject: [PATCH] xwayland: Update the fullscreen window on output change Make sure to update the fullscreen rootful window configuration whenever the output setup changes. Signed-off-by: Olivier Fourdan Reviewed-by: Kenny Levinsen --- hw/xwayland/xwayland-output.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/hw/xwayland/xwayland-output.c b/hw/xwayland/xwayland-output.c index fe7a9232e..f26fb5a4f 100644 --- a/hw/xwayland/xwayland-output.c +++ b/hw/xwayland/xwayland-output.c @@ -601,6 +601,7 @@ static void apply_output_change(struct xwl_output *xwl_output) { struct xwl_screen *xwl_screen = xwl_output->xwl_screen; + struct xwl_window *xwl_window; struct xwl_output *it; int mode_width, mode_height, count; int width = 0, height = 0, has_this_output = 0; @@ -658,6 +659,15 @@ apply_output_change(struct xwl_output *xwl_output) update_screen_size(xwl_screen, width, height); else RRTellChanged(xwl_screen->screen); + + /* If running rootful and fullscreen, make sure to match the new setup */ + if (xwl_screen->fullscreen) { + /* The root window may not yet be created */ + if (xwl_screen->screen->root) { + xwl_window = xwl_window_get(xwl_screen->screen->root); + xwl_window_rootful_update_fullscreen(xwl_window, xwl_output); + } + } } static void