From 179d6efb191d5aab63c02d35eb1f6756a387266f Mon Sep 17 00:00:00 2001 From: Kirill Primak Date: Wed, 18 Jan 2023 02:07:57 +0300 Subject: [PATCH] input-device: add addons --- include/wlr/types/wlr_input_device.h | 3 +++ types/wlr_input_device.c | 3 +++ 2 files changed, 6 insertions(+) diff --git a/include/wlr/types/wlr_input_device.h b/include/wlr/types/wlr_input_device.h index 0bbf517bc..9341b7ca6 100644 --- a/include/wlr/types/wlr_input_device.h +++ b/include/wlr/types/wlr_input_device.h @@ -10,6 +10,7 @@ #define WLR_TYPES_WLR_INPUT_DEVICE_H #include +#include enum wlr_button_state { WLR_BUTTON_RELEASED, @@ -34,6 +35,8 @@ struct wlr_input_device { struct wl_signal destroy; } events; + struct wlr_addon_set addons; + void *data; }; diff --git a/types/wlr_input_device.c b/types/wlr_input_device.c index 7de98b75f..d094319e9 100644 --- a/types/wlr_input_device.c +++ b/types/wlr_input_device.c @@ -2,6 +2,7 @@ #include #include +#include #include "interfaces/wlr_input_device.h" void wlr_input_device_init(struct wlr_input_device *dev, @@ -11,6 +12,7 @@ void wlr_input_device_init(struct wlr_input_device *dev, .name = strdup(name), }; + wlr_addon_set_init(&dev->addons); wl_signal_init(&dev->events.destroy); } @@ -21,6 +23,7 @@ void wlr_input_device_finish(struct wlr_input_device *wlr_device) { wl_signal_emit_mutable(&wlr_device->events.destroy, wlr_device); + wlr_addon_set_finish(&wlr_device->addons); wl_list_remove(&wlr_device->events.destroy.listener_list); free(wlr_device->name);