xwayland: catch SetWindowPixmap() even when rootful

Xwayland's own SetWindowPixmap() handler would be ignored when running
rootful.

This is fine as long as we do not plan to resize the root window,
however this is becoming problematic if we plan to resize the root
window dynamically when running rootful.

Just add the xwl_window_set_window_pixmap() handler regardless of
rootful/rootless mode.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
Olivier Fourdan 2022-04-27 14:07:49 +02:00
parent 2ec7c1680a
commit a4aba5ab30

View File

@ -777,10 +777,8 @@ xwl_screen_init(ScreenPtr pScreen, int argc, char **argv)
xwl_screen->MoveWindow = pScreen->MoveWindow; xwl_screen->MoveWindow = pScreen->MoveWindow;
pScreen->MoveWindow = xwl_move_window; pScreen->MoveWindow = xwl_move_window;
if (xwl_screen->rootless) {
xwl_screen->SetWindowPixmap = pScreen->SetWindowPixmap; xwl_screen->SetWindowPixmap = pScreen->SetWindowPixmap;
pScreen->SetWindowPixmap = xwl_window_set_window_pixmap; pScreen->SetWindowPixmap = xwl_window_set_window_pixmap;
}
pScreen->CursorWarpedTo = xwl_cursor_warped_to; pScreen->CursorWarpedTo = xwl_cursor_warped_to;
pScreen->CursorConfinedTo = xwl_cursor_confined_to; pScreen->CursorConfinedTo = xwl_cursor_confined_to;