diff options
author | Simon Ser <contact@emersion.fr> | 2019-11-12 17:56:57 +0100 |
---|---|---|
committer | Drew DeVault <sir@cmpwn.com> | 2019-11-13 10:15:28 -0500 |
commit | cde544de81b3da6368c3f88fe6d08df0b4bc198e (patch) | |
tree | 42e89e4f1e6f78ff454c98df368b61c76b5f0cf5 /include/wlr | |
parent | 1e568d84dfd40e7a106a2afc74cdd7d39ba9a7dd (diff) |
backend/wayland: expose remote objects
Expose the remote wl_display, wl_surface and wl_seat used by the Wayland
backend.
This allows compositors to customize the Wayland backend and to have
more freedom. For instance a compositor might want to handle clipboard
and drag-and-drop from the remote Wayland compositor. Another compositor
might want to setup pointer constraints.
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/backend/wayland.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/wlr/backend/wayland.h b/include/wlr/backend/wayland.h index cd8e73fb..e424e37a 100644 --- a/include/wlr/backend/wayland.h +++ b/include/wlr/backend/wayland.h @@ -19,6 +19,11 @@ struct wlr_backend *wlr_wl_backend_create(struct wl_display *display, const char *remote, wlr_renderer_create_func_t create_renderer_func); /** + * Returns the remote wl_display used by the Wayland backend. + */ +struct wl_display *wlr_wl_backend_get_remote_display(struct wlr_backend *backend); + +/** * Adds a new output to this backend. You may remove outputs by destroying them. * Note that if called before initializing the backend, this will return NULL * and your outputs will be created during initialization (and given to you via @@ -46,4 +51,14 @@ bool wlr_output_is_wl(struct wlr_output *output); */ void wlr_wl_output_set_title(struct wlr_output *output, const char *title); +/** + * Returns the remote wl_surface used by the Wayland output. + */ +struct wl_surface *wlr_wl_output_get_surface(struct wlr_output *output); + +/** + * Returns the remote wl_seat for a Wayland input device. + */ +struct wl_seat *wlr_wl_input_device_get_seat(struct wlr_input_device *dev); + #endif |