xwayland: Update actual screen and root window size on output hot plug

When a new output is hot-plugged we need to not only update our internal
screen dimensions, but also the dix screen dimensions, screenInfo
dimensions and the root window dimensions.

https://bugs.freedesktop.org/show_bug.cgi?id=92273

Signed-off-by: Jonas Ådahl <jadahl@gmail.com>
Reviewed-by: Daniel Stone <daniels@collabora.com>
This commit is contained in:
Jonas Ådahl 2015-10-07 12:02:38 +08:00 committed by Adam Jackson
parent 211d4c2d35
commit 216bdbc735
1 changed files with 14 additions and 1 deletions

View File

@ -156,9 +156,22 @@ output_handle_done(void *data, struct wl_output *wl_output)
--xwl_screen->expecting_event;
}
if (xwl_screen->screen->root)
SetRootClip(xwl_screen->screen, FALSE);
xwl_screen->width = width;
xwl_screen->height = height;
RRScreenSizeNotify(xwl_screen->screen);
xwl_screen->screen->width = width;
xwl_screen->screen->height = height;
if (xwl_screen->screen->root) {
xwl_screen->screen->root->drawable.width = width;
xwl_screen->screen->root->drawable.height = height;
SetRootClip(xwl_screen->screen, TRUE);
RRScreenSizeNotify(xwl_screen->screen);
}
update_desktop_dimensions();
}
static void