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 <ofourdan@redhat.com>
Reviewed-by: Kenny Levinsen <kl@kl.wtf>
This commit is contained in:
Olivier Fourdan 2023-11-10 09:17:20 +01:00
parent 73b9ff53c3
commit 06eb7271a9

View File

@ -601,6 +601,7 @@ static void
apply_output_change(struct xwl_output *xwl_output) apply_output_change(struct xwl_output *xwl_output)
{ {
struct xwl_screen *xwl_screen = xwl_output->xwl_screen; struct xwl_screen *xwl_screen = xwl_output->xwl_screen;
struct xwl_window *xwl_window;
struct xwl_output *it; struct xwl_output *it;
int mode_width, mode_height, count; int mode_width, mode_height, count;
int width = 0, height = 0, has_this_output = 0; 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); update_screen_size(xwl_screen, width, height);
else else
RRTellChanged(xwl_screen->screen); 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 static void