xwayland: fix client request-unmap bug

Remove foreign-toplevel handle when a client sends a request-unmap to a
minimized (therefore unmapped) view.
This commit is contained in:
Johan Malm 2023-08-04 22:04:42 +01:00 committed by Johan Malm
parent dfc0dfba6d
commit d961dbf9b0

View file

@ -489,7 +489,7 @@ static void
xwayland_view_unmap(struct view *view, bool client_request)
{
if (!view->mapped) {
return;
goto out;
}
view->mapped = false;
wl_list_remove(&view->commit.link);
@ -501,6 +501,7 @@ xwayland_view_unmap(struct view *view, bool client_request)
* than just minimized), destroy the foreign toplevel handle so
* the unmapped view doesn't show up in panels and the like.
*/
out:
if (client_request && view->toplevel.handle) {
wlr_foreign_toplevel_handle_v1_destroy(view->toplevel.handle);
view->toplevel.handle = NULL;