desktop-shell: Always update the shsurf's output to that of the view

In case shsurfs are migrated/moved or started on different outputs other
than the default one, it causes fullscreen views to never being demoted
to a lower stacking level, due to the fact we never update
the view's output whenever that has changed.

Synchronize the desktop shell output's with the view's output in the
transform_handler.

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Suggested-by: Daniel Stone <daniel.stone@collabora.com>
dev
Marius Vlad 5 years ago
parent aac8eefc44
commit f9e52eb0d7
  1. 2
      desktop-shell/shell.c

@ -3713,6 +3713,8 @@ transform_handler(struct wl_listener *listener, void *data)
if (!shsurf) if (!shsurf)
return; return;
shell_surface_set_output(shsurf, shsurf->view->output);
api = shsurf->shell->xwayland_surface_api; api = shsurf->shell->xwayland_surface_api;
if (!api) { if (!api) {
api = weston_xwayland_surface_get_api(shsurf->shell->compositor); api = weston_xwayland_surface_get_api(shsurf->shell->compositor);

Loading…
Cancel
Save