xwayland: add wlr_xwayland_get_xwm_connection

Allows the compositors to get the xwm connection
This commit is contained in:
Vaxry 2024-03-02 16:40:02 +00:00 committed by Simon Ser
parent 94dbb3cfb5
commit 50eae512d9
2 changed files with 16 additions and 0 deletions

View file

@ -298,4 +298,15 @@ enum wlr_xwayland_icccm_input_model wlr_xwayland_icccm_input_model(
void wlr_xwayland_set_workareas(struct wlr_xwayland *wlr_xwayland, void wlr_xwayland_set_workareas(struct wlr_xwayland *wlr_xwayland,
const struct wlr_box *workareas, size_t num_workareas); const struct wlr_box *workareas, size_t num_workareas);
/**
* Get the XCB connection of the XWM.
*
* The connection is only valid after wlr_xwayland.events.ready, and becomes
* invalid on wlr_xwayland_server.events.destroy. In that case, NULL is
* returned.
*/
xcb_connection_t *wlr_xwayland_get_xwm_connection(
struct wlr_xwayland *wlr_xwayland);
#endif #endif

View file

@ -2380,3 +2380,8 @@ void wlr_xwayland_set_workareas(struct wlr_xwayland *wlr_xwayland,
XCB_ATOM_CARDINAL, 32, 4 * num_workareas, data); XCB_ATOM_CARDINAL, 32, 4 * num_workareas, data);
free(data); free(data);
} }
xcb_connection_t *wlr_xwayland_get_xwm_connection(
struct wlr_xwayland *wlr_xwayland) {
return wlr_xwayland->xwm ? wlr_xwayland->xwm->xcb_conn : NULL;
}