From cfed039c9a353cff5d8c3c678d7eb272c887de77 Mon Sep 17 00:00:00 2001 From: Simon Zeni Date: Thu, 3 Mar 2022 09:43:38 -0500 Subject: [PATCH] types/wlr_input_device: move init and finish function to private API --- backend/wayland/seat.c | 1 + include/interfaces/wlr_input_device.h | 20 ++++++++++++++++++++ include/wlr/backend/headless.h | 1 - include/wlr/backend/libinput.h | 3 ++- include/wlr/backend/wayland.h | 3 ++- include/wlr/backend/x11.h | 3 ++- include/wlr/types/wlr_cursor.h | 3 ++- include/wlr/types/wlr_input_device.h | 10 ---------- include/wlr/types/wlr_tablet_v2.h | 3 ++- types/seat/wlr_seat.c | 1 - types/seat/wlr_seat_keyboard.c | 1 - types/seat/wlr_seat_pointer.c | 1 - types/seat/wlr_seat_touch.c | 1 - types/wlr_input_device.c | 2 +- types/wlr_keyboard.c | 2 +- types/wlr_pointer.c | 2 ++ types/wlr_switch.c | 2 ++ types/wlr_tablet_pad.c | 2 ++ types/wlr_tablet_tool.c | 2 ++ types/wlr_touch.c | 2 ++ 20 files changed, 43 insertions(+), 22 deletions(-) create mode 100644 include/interfaces/wlr_input_device.h diff --git a/backend/wayland/seat.c b/backend/wayland/seat.c index e9785d9a..c1eddcd7 100644 --- a/backend/wayland/seat.c +++ b/backend/wayland/seat.c @@ -20,6 +20,7 @@ #include "pointer-gestures-unstable-v1-client-protocol.h" #include "relative-pointer-unstable-v1-client-protocol.h" +#include "interfaces/wlr_input_device.h" #include "backend/wayland.h" #include "util/signal.h" #include "util/time.h" diff --git a/include/interfaces/wlr_input_device.h b/include/interfaces/wlr_input_device.h new file mode 100644 index 00000000..c24b5366 --- /dev/null +++ b/include/interfaces/wlr_input_device.h @@ -0,0 +1,20 @@ +#ifndef INTERFACES_INPUT_DEVICE_H +#define INTERFACES_INPUT_DEVICE_H + +#include + +/** + * Initializes a given wlr_input_device. Allocates memory for the name and sets + * its vendor and product id to 0. + * wlr_device must be non-NULL. + */ +void wlr_input_device_init(struct wlr_input_device *wlr_device, + enum wlr_input_device_type type, const char *name); + +/** + * Cleans up all the memory owned by a given wlr_input_device and signals + * the destroy event. + */ +void wlr_input_device_finish(struct wlr_input_device *wlr_device); + +#endif diff --git a/include/wlr/backend/headless.h b/include/wlr/backend/headless.h index f4735483..ff55746f 100644 --- a/include/wlr/backend/headless.h +++ b/include/wlr/backend/headless.h @@ -10,7 +10,6 @@ #define WLR_BACKEND_HEADLESS_H #include -#include #include /** diff --git a/include/wlr/backend/libinput.h b/include/wlr/backend/libinput.h index 50faaf7d..94197b7a 100644 --- a/include/wlr/backend/libinput.h +++ b/include/wlr/backend/libinput.h @@ -13,7 +13,8 @@ #include #include #include -#include + +struct wlr_input_device; struct wlr_backend *wlr_libinput_backend_create(struct wl_display *display, struct wlr_session *session); diff --git a/include/wlr/backend/wayland.h b/include/wlr/backend/wayland.h index a32a682a..0aed3aa1 100644 --- a/include/wlr/backend/wayland.h +++ b/include/wlr/backend/wayland.h @@ -4,9 +4,10 @@ #include #include #include -#include #include +struct wlr_input_device; + /** * Creates a new wlr_wl_backend. This backend will be created with no outputs; * you must use wlr_wl_output_create to add them. diff --git a/include/wlr/backend/x11.h b/include/wlr/backend/x11.h index 90918f3f..c6aaaf80 100644 --- a/include/wlr/backend/x11.h +++ b/include/wlr/backend/x11.h @@ -6,9 +6,10 @@ #include #include -#include #include +struct wlr_input_device; + /** * Creates a new wlr_x11_backend. This backend will be created with no outputs; * you must use wlr_x11_output_create to add them. diff --git a/include/wlr/types/wlr_cursor.h b/include/wlr/types/wlr_cursor.h index 7dd73c48..95a3e37f 100644 --- a/include/wlr/types/wlr_cursor.h +++ b/include/wlr/types/wlr_cursor.h @@ -10,10 +10,11 @@ #define WLR_TYPES_WLR_CURSOR_H #include -#include #include #include +struct wlr_input_device; + /** * wlr_cursor implements the behavior of the "cursor", that is, the image on the * screen typically moved about with a mouse or so. It provides tracking for diff --git a/include/wlr/types/wlr_input_device.h b/include/wlr/types/wlr_input_device.h index 73d90fa5..0ca64341 100644 --- a/include/wlr/types/wlr_input_device.h +++ b/include/wlr/types/wlr_input_device.h @@ -25,8 +25,6 @@ enum wlr_input_device_type { WLR_INPUT_DEVICE_SWITCH, }; -struct wlr_input_device_impl; - struct wlr_input_device { enum wlr_input_device_type type; unsigned int vendor, product; @@ -53,12 +51,4 @@ struct wlr_input_device { void *data; }; -void wlr_input_device_init(struct wlr_input_device *wlr_device, - enum wlr_input_device_type type, const char *name); - -/** - * Clean up all of the provided wlr_input_device resources - */ -void wlr_input_device_finish(struct wlr_input_device *wlr_device); - #endif diff --git a/include/wlr/types/wlr_tablet_v2.h b/include/wlr/types/wlr_tablet_v2.h index 4483a578..c05015b2 100644 --- a/include/wlr/types/wlr_tablet_v2.h +++ b/include/wlr/types/wlr_tablet_v2.h @@ -11,13 +11,14 @@ #include #include -#include #include "tablet-unstable-v2-protocol.h" /* This can probably be even lower,the tools don't have a lot of buttons */ #define WLR_TABLET_V2_TOOL_BUTTONS_CAP 16 +struct wlr_input_device; + struct wlr_tablet_pad_v2_grab_interface; struct wlr_tablet_pad_v2_grab { diff --git a/types/seat/wlr_seat.c b/types/seat/wlr_seat.c index 4933133c..f2fd04c1 100644 --- a/types/seat/wlr_seat.c +++ b/types/seat/wlr_seat.c @@ -5,7 +5,6 @@ #include #include #include -#include #include #include #include diff --git a/types/seat/wlr_seat_keyboard.c b/types/seat/wlr_seat_keyboard.c index 9ed5fb34..1bad8ff6 100644 --- a/types/seat/wlr_seat_keyboard.c +++ b/types/seat/wlr_seat_keyboard.c @@ -5,7 +5,6 @@ #include #include #include -#include #include #include "types/wlr_data_device.h" #include "types/wlr_seat.h" diff --git a/types/seat/wlr_seat_pointer.c b/types/seat/wlr_seat_pointer.c index ce4ca54e..ef058999 100644 --- a/types/seat/wlr_seat_pointer.c +++ b/types/seat/wlr_seat_pointer.c @@ -5,7 +5,6 @@ #include #include #include -#include #include #include "types/wlr_seat.h" #include "util/signal.h" diff --git a/types/seat/wlr_seat_touch.c b/types/seat/wlr_seat_touch.c index 99c50cf8..65a8c7c0 100644 --- a/types/seat/wlr_seat_touch.c +++ b/types/seat/wlr_seat_touch.c @@ -5,7 +5,6 @@ #include #include #include -#include #include #include "types/wlr_seat.h" #include "util/signal.h" diff --git a/types/wlr_input_device.c b/types/wlr_input_device.c index 23ee4177..d376582e 100644 --- a/types/wlr_input_device.c +++ b/types/wlr_input_device.c @@ -2,7 +2,7 @@ #include #include -#include +#include "interfaces/wlr_input_device.h" #include "util/signal.h" void wlr_input_device_init(struct wlr_input_device *dev, diff --git a/types/wlr_keyboard.c b/types/wlr_keyboard.c index 372efcb5..1d609094 100644 --- a/types/wlr_keyboard.c +++ b/types/wlr_keyboard.c @@ -5,8 +5,8 @@ #include #include #include -#include #include +#include "interfaces/wlr_input_device.h" #include "types/wlr_keyboard.h" #include "util/array.h" #include "util/shm.h" diff --git a/types/wlr_pointer.c b/types/wlr_pointer.c index 9f07e290..737d36ec 100644 --- a/types/wlr_pointer.c +++ b/types/wlr_pointer.c @@ -4,6 +4,8 @@ #include #include +#include "interfaces/wlr_input_device.h" + void wlr_pointer_init(struct wlr_pointer *pointer, const struct wlr_pointer_impl *impl, const char *name) { wlr_input_device_init(&pointer->base, WLR_INPUT_DEVICE_POINTER, name); diff --git a/types/wlr_switch.c b/types/wlr_switch.c index b6972eea..8e84841d 100644 --- a/types/wlr_switch.c +++ b/types/wlr_switch.c @@ -4,6 +4,8 @@ #include #include +#include "interfaces/wlr_input_device.h" + void wlr_switch_init(struct wlr_switch *switch_device, const struct wlr_switch_impl *impl, const char *name) { wlr_input_device_init(&switch_device->base, WLR_INPUT_DEVICE_SWITCH, name); diff --git a/types/wlr_tablet_pad.c b/types/wlr_tablet_pad.c index 73dd625c..df389c46 100644 --- a/types/wlr_tablet_pad.c +++ b/types/wlr_tablet_pad.c @@ -5,6 +5,8 @@ #include #include +#include "interfaces/wlr_input_device.h" + void wlr_tablet_pad_init(struct wlr_tablet_pad *pad, const struct wlr_tablet_pad_impl *impl, const char *name) { wlr_input_device_init(&pad->base, WLR_INPUT_DEVICE_TABLET_PAD, name); diff --git a/types/wlr_tablet_tool.c b/types/wlr_tablet_tool.c index 8718abe9..a5c9d44f 100644 --- a/types/wlr_tablet_tool.c +++ b/types/wlr_tablet_tool.c @@ -4,6 +4,8 @@ #include #include +#include "interfaces/wlr_input_device.h" + void wlr_tablet_init(struct wlr_tablet *tablet, const struct wlr_tablet_impl *impl, const char *name) { wlr_input_device_init(&tablet->base, WLR_INPUT_DEVICE_TABLET_TOOL, name); diff --git a/types/wlr_touch.c b/types/wlr_touch.c index de288347..612efcda 100644 --- a/types/wlr_touch.c +++ b/types/wlr_touch.c @@ -4,6 +4,8 @@ #include #include +#include "interfaces/wlr_input_device.h" + void wlr_touch_init(struct wlr_touch *touch, const struct wlr_touch_impl *impl, const char *name) { wlr_input_device_init(&touch->base, WLR_INPUT_DEVICE_TOUCH, name);