Remove "ever_been_mapped" from cg_wayland_view

This commit is contained in:
Matthew Bauer 2020-03-16 15:30:24 -04:00
parent 8edaa54faf
commit 3e6576b0ee
2 changed files with 0 additions and 16 deletions

View file

@ -150,7 +150,6 @@ handle_xwayland_surface_map(struct wl_listener *listener, void *data)
xwayland_view->commit.notify = handle_xwayland_surface_commit; xwayland_view->commit.notify = handle_xwayland_surface_commit;
wl_signal_add(&xwayland_view->xwayland_surface->surface->events.commit, &xwayland_view->commit); wl_signal_add(&xwayland_view->xwayland_surface->surface->events.commit, &xwayland_view->commit);
xwayland_view->ever_been_mapped = true;
view_map(view, xwayland_view->xwayland_surface->surface); view_map(view, xwayland_view->xwayland_surface->surface);
view_damage_whole(view); view_damage_whole(view);

View file

@ -9,21 +9,6 @@
struct cg_xwayland_view { struct cg_xwayland_view {
struct cg_view view; struct cg_view view;
struct wlr_xwayland_surface *xwayland_surface; struct wlr_xwayland_surface *xwayland_surface;
/* Some applications that aren't yet Wayland-native or
otherwise "special" (e.g. Firefox Nightly and Google
Chrome/Chromium) spawn an XWayland surface upon startup
that is almost immediately closed again. This makes Cage
think there are no views left, which results in it
exiting. However, after this initial (unmapped) surface,
the "real" application surface is opened. This leads to
these applications' startup sequences being interrupted by
Cage exiting. Hence, to work around this issue, Cage checks
whether an XWayland surface has ever been mapped and exits
only if 1) the XWayland surface has ever been mapped and 2)
this was the last surface Cage manages. */
bool ever_been_mapped;
struct wl_listener destroy; struct wl_listener destroy;
struct wl_listener unmap; struct wl_listener unmap;
struct wl_listener map; struct wl_listener map;