diff --git a/src/wayland/meta-xwayland.c b/src/wayland/meta-xwayland.c index 4bf45f3dc..9b61ce569 100644 --- a/src/wayland/meta-xwayland.c +++ b/src/wayland/meta-xwayland.c @@ -1276,3 +1276,19 @@ meta_xwayland_handle_xevent (XEvent *event) return FALSE; } + +gboolean +meta_xwayland_signal (MetaXWaylandManager *manager, + int signum, + GError **error) +{ + if (!manager->proc) + { + g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, + "Can't send signal, Xwayland not running"); + return FALSE; + } + + g_subprocess_send_signal (manager->proc, signum); + return TRUE; +} diff --git a/src/wayland/meta-xwayland.h b/src/wayland/meta-xwayland.h index dac9c689f..cbe27b183 100644 --- a/src/wayland/meta-xwayland.h +++ b/src/wayland/meta-xwayland.h @@ -50,4 +50,9 @@ void meta_xwayland_associate_window_with_surface (MetaWindow *window, MetaWaylandSurface *surface); +META_EXPORT_TEST +gboolean meta_xwayland_signal (MetaXWaylandManager *manager, + int signum, + GError **error); + #endif /* META_XWAYLAND_H */