mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-30 00:15:58 +01:00
Merge pull request #1461 from c-edw/feature/WLRToplevelAndPopup
Remove wlr_xdg_surface_send_close.
This commit is contained in:
commit
dc9c91b0a4
3 changed files with 19 additions and 20 deletions
|
@ -296,9 +296,14 @@ uint32_t wlr_xdg_toplevel_set_tiled(struct wlr_xdg_surface *surface,
|
||||||
uint32_t tiled_edges);
|
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
|
* 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_surface *surface = view->xdg_surface;
|
||||||
struct wlr_xdg_popup *popup = NULL;
|
struct wlr_xdg_popup *popup = NULL;
|
||||||
wl_list_for_each(popup, &surface->popups, link) {
|
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) {
|
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);
|
surface->client->ping_serial);
|
||||||
}
|
}
|
||||||
|
|
||||||
void wlr_xdg_surface_send_close(struct wlr_xdg_surface *surface) {
|
void wlr_xdg_toplevel_send_close(struct wlr_xdg_surface *surface) {
|
||||||
switch (surface->role) {
|
assert(surface->toplevel);
|
||||||
case WLR_XDG_SURFACE_ROLE_NONE:
|
assert(surface->role == WLR_XDG_SURFACE_ROLE_TOPLEVEL);
|
||||||
assert(0 && "not reached");
|
|
||||||
break;
|
|
||||||
case WLR_XDG_SURFACE_ROLE_TOPLEVEL:
|
|
||||||
if (surface->toplevel) {
|
|
||||||
xdg_toplevel_send_close(surface->toplevel->resource);
|
xdg_toplevel_send_close(surface->toplevel->resource);
|
||||||
}
|
}
|
||||||
break;
|
|
||||||
case WLR_XDG_SURFACE_ROLE_POPUP:
|
void wlr_xdg_popup_destroy(struct wlr_xdg_surface *surface) {
|
||||||
if (surface->popup) {
|
assert(surface->popup);
|
||||||
|
assert(surface->role == WLR_XDG_SURFACE_ROLE_POPUP);
|
||||||
xdg_popup_send_popup_done(surface->popup->resource);
|
xdg_popup_send_popup_done(surface->popup->resource);
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void xdg_popup_get_position(struct wlr_xdg_popup *popup,
|
static void xdg_popup_get_position(struct wlr_xdg_popup *popup,
|
||||||
|
|
Loading…
Reference in a new issue