void ClientConnection::destroy() { if (!d->client) { return; } wl_client_destroy(d->client); }
void wlc_view_close_ptr(struct wlc_view *view) { if (!view) return; struct wl_resource *r; if (view->xdg_surface && (r = wl_resource_from_wlc_resource(view->xdg_surface, "xdg-surface"))) { xdg_surface_send_close(r); } else if (is_x11_view(view)) { wlc_x11_window_close(&view->x11); } else if (view->xdg_popup && (r = wl_resource_from_wlc_resource(view->xdg_popup, "xdg-popup"))) { xdg_popup_send_popup_done(r); } else if (view->shell_surface && (r = wl_resource_from_wlc_resource(view->shell_surface, "shell-surface"))) { if (view->type & WLC_BIT_POPUP) { wl_shell_surface_send_popup_done(r); } else { struct wl_client *client = wl_resource_get_client(r); wlc_resource_release(view->shell_surface); wl_client_destroy(client); } } }
void Client::destroy() { ny::sendLog("client::destroy: client ", this, " with wl_client ", &wlClient()); wl_client_destroy(&wlClient()); }