|
|
@ -743,6 +743,11 @@ static void xwm_handle_unmap_notify(struct wlr_xwm *xwm,
|
|
|
|
return;
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (xsurface->mapped) {
|
|
|
|
|
|
|
|
xsurface->mapped = false;
|
|
|
|
|
|
|
|
wlr_signal_emit_safe(&xsurface->events.unmap, xsurface);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (xsurface->surface_id) {
|
|
|
|
if (xsurface->surface_id) {
|
|
|
|
// Make sure we're not on the unpaired surface list or we
|
|
|
|
// Make sure we're not on the unpaired surface list or we
|
|
|
|
// could be assigned a surface during surface creation that
|
|
|
|
// could be assigned a surface during surface creation that
|
|
|
@ -757,11 +762,6 @@ static void xwm_handle_unmap_notify(struct wlr_xwm *xwm,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
xsurface->surface = NULL;
|
|
|
|
xsurface->surface = NULL;
|
|
|
|
|
|
|
|
|
|
|
|
if (xsurface->mapped) {
|
|
|
|
|
|
|
|
xsurface->mapped = false;
|
|
|
|
|
|
|
|
wlr_signal_emit_safe(&xsurface->events.unmap, xsurface);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xsurface_set_wm_state(xsurface, ICCCM_WITHDRAWN_STATE);
|
|
|
|
xsurface_set_wm_state(xsurface, ICCCM_WITHDRAWN_STATE);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|