aboutsummaryrefslogtreecommitdiff
path: root/xwayland
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2017-11-12 16:01:31 -0500
committerDrew DeVault <sir@cmpwn.com>2017-11-12 16:01:48 -0500
commita317ecdab8ef8deb184b72db208794daa4c4a3a0 (patch)
treec3eabdfe3a5f6bd61f55fedfa6e147f3c4691b9f /xwayland
parent51ef12f1280baff16129b4030a06ac267b385ca5 (diff)
Run startup command after xwayland is ready
Diffstat (limited to 'xwayland')
-rw-r--r--xwayland/xwayland.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/xwayland/xwayland.c b/xwayland/xwayland.c
index 0452f04c..ecec785c 100644
--- a/xwayland/xwayland.c
+++ b/xwayland/xwayland.c
@@ -211,6 +211,8 @@ static int xserver_handle_ready(int signal_number, void *data) {
snprintf(display_name, sizeof(display_name), ":%d", wlr_xwayland->display);
setenv("DISPLAY", display_name, true);
+ wl_signal_emit(&wlr_xwayland->events.ready, wlr_xwayland);
+
return 1; /* wayland event loop dispatcher's count */
}
@@ -223,6 +225,7 @@ static bool wlr_xwayland_init(struct wlr_xwayland *wlr_xwayland,
wlr_xwayland->wl_fd[0] = wlr_xwayland->wl_fd[1] = -1;
wlr_xwayland->wm_fd[0] = wlr_xwayland->wm_fd[1] = -1;
wl_signal_init(&wlr_xwayland->events.new_surface);
+ wl_signal_init(&wlr_xwayland->events.ready);
wlr_xwayland->display = open_display_sockets(wlr_xwayland->x_fd);
if (wlr_xwayland->display < 0) {