xdg popup: move function to a file it belongs to

This commit is contained in:
Kirill Primak 2021-09-11 12:55:15 +03:00 committed by Simon Ser
parent e479dc1ef0
commit 52da68b591
2 changed files with 15 additions and 16 deletions

View File

@ -196,6 +196,21 @@ struct wlr_xdg_popup_grab *get_xdg_shell_popup_grab_from_seat(
return xdg_grab;
}
void handle_xdg_surface_popup_committed(struct wlr_xdg_surface *surface) {
assert(surface->role == WLR_XDG_SURFACE_ROLE_POPUP);
if (!surface->popup->parent) {
wl_resource_post_error(surface->resource,
XDG_SURFACE_ERROR_NOT_CONSTRUCTED,
"xdg_popup has no parent");
return;
}
if (!surface->popup->committed) {
schedule_xdg_surface_configure(surface);
surface->popup->committed = true;
}
}
static const struct xdg_popup_interface xdg_popup_implementation;

View File

@ -140,22 +140,6 @@ void create_xdg_positioner(struct wlr_xdg_client *client, uint32_t id) {
positioner, xdg_positioner_handle_resource_destroy);
}
void handle_xdg_surface_popup_committed(struct wlr_xdg_surface *surface) {
assert(surface->role == WLR_XDG_SURFACE_ROLE_POPUP);
if (!surface->popup->parent) {
wl_resource_post_error(surface->resource,
XDG_SURFACE_ERROR_NOT_CONSTRUCTED,
"xdg_popup has no parent");
return;
}
if (!surface->popup->committed) {
schedule_xdg_surface_configure(surface);
surface->popup->committed = true;
}
}
static bool positioner_anchor_has_edge(enum xdg_positioner_anchor anchor,
enum xdg_positioner_anchor edge) {
switch (edge) {