mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2024-11-22 15:12:26 +00:00
Merge pull request #1461 from c-edw/feature/WLRToplevelAndPopup
Remove wlr_xdg_surface_send_close.
This commit is contained in:
commit
dc9c91b0a4
@ -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
|
||||
|
@ -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) {
|
||||
|
@ -517,22 +517,16 @@ 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) {
|
||||
assert(surface->toplevel);
|
||||
assert(surface->role == WLR_XDG_SURFACE_ROLE_TOPLEVEL);
|
||||
xdg_toplevel_send_close(surface->toplevel->resource);
|
||||
}
|
||||
|
||||
void wlr_xdg_popup_destroy(struct wlr_xdg_surface *surface) {
|
||||
assert(surface->popup);
|
||||
assert(surface->role == WLR_XDG_SURFACE_ROLE_POPUP);
|
||||
xdg_popup_send_popup_done(surface->popup->resource);
|
||||
}
|
||||
|
||||
static void xdg_popup_get_position(struct wlr_xdg_popup *popup,
|
||||
|
Loading…
Reference in New Issue
Block a user