mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-12-22 18:09:49 +01:00
xwm: emit new_surface/destroy on associate/dissociate
This commit is contained in:
parent
ad51983b23
commit
039cca8a51
1 changed files with 4 additions and 4 deletions
|
@ -206,8 +206,6 @@ static struct wlr_xwayland_surface *xwayland_surface_create(
|
|||
|
||||
wl_list_insert(&xwm->surfaces, &surface->link);
|
||||
|
||||
wl_signal_emit_mutable(&xwm->xwayland->events.new_surface, surface);
|
||||
|
||||
return surface;
|
||||
}
|
||||
|
||||
|
@ -391,6 +389,8 @@ static void xwayland_surface_dissociate(struct wlr_xwayland_surface *xsurface) {
|
|||
xwayland_surface_set_mapped(xsurface, false);
|
||||
|
||||
if (xsurface->surface != NULL) {
|
||||
wl_signal_emit_mutable(&xsurface->events.destroy, xsurface);
|
||||
|
||||
wl_list_remove(&xsurface->surface_commit.link);
|
||||
wl_list_remove(&xsurface->surface_precommit.link);
|
||||
wlr_addon_finish(&xsurface->surface_addon);
|
||||
|
@ -409,8 +409,6 @@ static void xwayland_surface_dissociate(struct wlr_xwayland_surface *xsurface) {
|
|||
static void xwayland_surface_destroy(struct wlr_xwayland_surface *xsurface) {
|
||||
xwayland_surface_dissociate(xsurface);
|
||||
|
||||
wl_signal_emit_mutable(&xsurface->events.destroy, xsurface);
|
||||
|
||||
if (xsurface == xsurface->xwm->focus_surface) {
|
||||
xwm_surface_activate(xsurface->xwm, NULL);
|
||||
}
|
||||
|
@ -954,6 +952,8 @@ static void xwayland_surface_associate(struct wlr_xwm *xwm,
|
|||
if (xwm->xres) {
|
||||
read_surface_client_id(xwm, xsurface);
|
||||
}
|
||||
|
||||
wl_signal_emit_mutable(&xwm->xwayland->events.new_surface, xsurface);
|
||||
}
|
||||
|
||||
static void xwm_handle_create_notify(struct wlr_xwm *xwm,
|
||||
|
|
Loading…
Reference in a new issue