Remove wlr_xdg_surface_send_close.

This commit is contained in:
Connor E 2019-01-13 14:22:49 +00:00
parent 8134d5b1e0
commit e7fff4f560
3 changed files with 20 additions and 19 deletions

View File

@ -296,9 +296,14 @@ uint32_t wlr_xdg_toplevel_set_tiled(struct wlr_xdg_surface *surface,
uint32_t tiled_edges);
/**
* Request that this xdg surface closes.
* Request that this xdg toplevel closes.
*/
void wlr_xdg_surface_send_close(struct wlr_xdg_surface *surface);
void wlr_xdg_toplevel_send_close(struct wlr_xdg_surface *surface);
/**
* Request that this xdg popup closes.
**/
void wlr_xdg_popup_destroy(struct wlr_xdg_surface *surface);
/**
* Get the geometry for this positioner based on the anchor rect, gravity, and

View File

@ -248,9 +248,9 @@ static void close(struct roots_view *view) {
struct wlr_xdg_surface *surface = view->xdg_surface;
struct wlr_xdg_popup *popup = NULL;
wl_list_for_each(popup, &surface->popups, link) {
wlr_xdg_surface_send_close(popup->base);
wlr_xdg_popup_destroy(popup->base);
}
wlr_xdg_surface_send_close(surface);
wlr_xdg_toplevel_send_close(surface);
}
static void destroy(struct roots_view *view) {

View File

@ -517,21 +517,17 @@ void wlr_xdg_surface_ping(struct wlr_xdg_surface *surface) {
surface->client->ping_serial);
}
void wlr_xdg_surface_send_close(struct wlr_xdg_surface *surface) {
switch (surface->role) {
case WLR_XDG_SURFACE_ROLE_NONE:
assert(0 && "not reached");
break;
case WLR_XDG_SURFACE_ROLE_TOPLEVEL:
if (surface->toplevel) {
xdg_toplevel_send_close(surface->toplevel->resource);
}
break;
case WLR_XDG_SURFACE_ROLE_POPUP:
if (surface->popup) {
xdg_popup_send_popup_done(surface->popup->resource);
}
break;
void wlr_xdg_toplevel_send_close(struct wlr_xdg_surface *surface) {
if (surface->role == WLR_XDG_SURFACE_ROLE_TOPLEVEL
&& surface->toplevel) {
xdg_toplevel_send_close(surface->toplevel->resource);
}
}
void wlr_xdg_popup_destroy(struct wlr_xdg_surface *surface) {
if (surface->role == WLR_XDG_SURFACE_ROLE_POPUP
&& surface->popup) {
xdg_popup_send_popup_done(surface->popup->resource);
}
}