From fcd7062542bec6f9ab247dbc63c6eead457006bf Mon Sep 17 00:00:00 2001 From: Dominique Martinet Date: Tue, 19 Dec 2017 20:40:36 +0100 Subject: [PATCH] x11 backend: add wlr_input_device_is_x11 --- backend/x11/backend.c | 9 +++++++-- include/backend/x11.h | 1 - include/wlr/backend/x11.h | 2 ++ 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/backend/x11/backend.c b/backend/x11/backend.c index 0d0eaa5b..d2690342 100644 --- a/backend/x11/backend.c +++ b/backend/x11/backend.c @@ -25,6 +25,7 @@ static struct wlr_backend_impl backend_impl; static struct wlr_output_impl output_impl; +static struct wlr_input_device_impl input_device_impl = { 0 }; static uint32_t xcb_button_to_wl(uint32_t button) { switch (button) { @@ -328,12 +329,12 @@ struct wlr_backend *wlr_x11_backend_create(struct wl_display *display, } wlr_input_device_init(&x11->keyboard_dev, WLR_INPUT_DEVICE_KEYBOARD, - NULL, "X11 keyboard", 0, 0); + &input_device_impl, "X11 keyboard", 0, 0); wlr_keyboard_init(&x11->keyboard, NULL); x11->keyboard_dev.keyboard = &x11->keyboard; wlr_input_device_init(&x11->pointer_dev, WLR_INPUT_DEVICE_POINTER, - NULL, "X11 pointer", 0, 0); + &input_device_impl, "X11 pointer", 0, 0); wlr_pointer_init(&x11->pointer, NULL); x11->pointer_dev.pointer = &x11->pointer; @@ -405,3 +406,7 @@ static struct wlr_output_impl output_impl = { bool wlr_output_is_x11(struct wlr_output *wlr_output) { return wlr_output->impl == &output_impl; } + +bool wlr_input_device_is_x11(struct wlr_input_device *wlr_dev) { + return wlr_dev->impl == &input_device_impl; +} diff --git a/include/backend/x11.h b/include/backend/x11.h index b845a41a..b342cd4d 100644 --- a/include/backend/x11.h +++ b/include/backend/x11.h @@ -6,7 +6,6 @@ #include #include #include -#include struct wlr_x11_backend; diff --git a/include/wlr/backend/x11.h b/include/wlr/backend/x11.h index 667bfd15..b22d7f68 100644 --- a/include/wlr/backend/x11.h +++ b/include/wlr/backend/x11.h @@ -4,12 +4,14 @@ #include #include #include +#include #include struct wlr_backend *wlr_x11_backend_create(struct wl_display *display, const char *x11_display); bool wlr_backend_is_x11(struct wlr_backend *backend); +bool wlr_input_device_is_x11(struct wlr_input_device *device); bool wlr_output_is_x11(struct wlr_output *output); #endif