diff --git a/backend/wayland/output.c b/backend/wayland/output.c index d841ec49..d76f6366 100644 --- a/backend/wayland/output.c +++ b/backend/wayland/output.c @@ -205,6 +205,10 @@ static struct wlr_output_impl output_impl = { .move_cursor = wlr_wl_output_move_cursor, }; +bool wlr_output_is_wl(struct wlr_output *wlr_output) { + return wlr_output->impl == &output_impl; +} + static void xdg_surface_handle_configure(void *data, struct zxdg_surface_v6 *xdg_surface, uint32_t serial) { struct wlr_wl_backend_output *output = data; diff --git a/include/backend/wayland.h b/include/backend/wayland.h index 41cd21c8..5d30745e 100644 --- a/include/backend/wayland.h +++ b/include/backend/wayland.h @@ -8,7 +8,6 @@ #include #include #include -#include #include #include diff --git a/include/wlr/backend/wayland.h b/include/wlr/backend/wayland.h index 43a0b72e..bed03f51 100644 --- a/include/wlr/backend/wayland.h +++ b/include/wlr/backend/wayland.h @@ -4,6 +4,7 @@ #include #include #include +#include #include /** @@ -11,6 +12,7 @@ * you must use wlr_wl_output_create to add them. */ struct wlr_backend *wlr_wl_backend_create(struct wl_display *display); + /** * 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 @@ -18,9 +20,15 @@ struct wlr_backend *wlr_wl_backend_create(struct wl_display *display); * the output_add signal). */ struct wlr_output *wlr_wl_output_create(struct wlr_backend *backend); + /** * True if the given backend is a wlr_wl_backend. */ bool wlr_backend_is_wl(struct wlr_backend *backend); +/** + * True if the given output is a wlr_wl_backend_output. + */ +bool wlr_output_is_wl(struct wlr_output *output); + #endif