aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/wlr/xwayland.h1
-rw-r--r--xwayland/xwm.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/include/wlr/xwayland.h b/include/wlr/xwayland.h
index 4e59d9c5..f2484889 100644
--- a/include/wlr/xwayland.h
+++ b/include/wlr/xwayland.h
@@ -52,6 +52,7 @@ struct wlr_xwayland_surface {
struct wl_signal set_title;
struct wl_signal set_class;
+ struct wl_signal set_parent;
} events;
void *data;
diff --git a/xwayland/xwm.c b/xwayland/xwm.c
index b8eefa4b..d1e41b3c 100644
--- a/xwayland/xwm.c
+++ b/xwayland/xwm.c
@@ -64,6 +64,7 @@ static struct wlr_xwayland_surface *wlr_xwayland_surface_create(
wl_signal_init(&surface->events.request_configure);
wl_signal_init(&surface->events.set_class);
wl_signal_init(&surface->events.set_title);
+ wl_signal_init(&surface->events.set_parent);
return surface;
}
@@ -156,6 +157,7 @@ static void read_surface_parent(struct wlr_xwm *xwm,
}
wlr_log(L_DEBUG, "XCB_ATOM_WM_TRANSIENT_FOR: %p", xid);
+ wl_signal_emit(&surface->events.set_parent, surface);
}
static void read_surface_property(struct wlr_xwm *xwm,