aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSimon Zeni <simon@bl4ckb0ne.ca>2022-03-03 09:43:38 -0500
committerKirill Primak <vyivel@eclair.cafe>2022-03-07 16:37:41 +0000
commitcfed039c9a353cff5d8c3c678d7eb272c887de77 (patch)
treeac6e617cda2658d534fc9081d5c985e6cbc9c1b0 /include
parent1bb2631c5c05e4b74c1a3163ab030ae42c7d8fe8 (diff)
types/wlr_input_device: move init and finish function to private API
Diffstat (limited to 'include')
-rw-r--r--include/interfaces/wlr_input_device.h20
-rw-r--r--include/wlr/backend/headless.h1
-rw-r--r--include/wlr/backend/libinput.h3
-rw-r--r--include/wlr/backend/wayland.h3
-rw-r--r--include/wlr/backend/x11.h3
-rw-r--r--include/wlr/types/wlr_cursor.h3
-rw-r--r--include/wlr/types/wlr_input_device.h10
-rw-r--r--include/wlr/types/wlr_tablet_v2.h3
8 files changed, 30 insertions, 16 deletions
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 <wlr/types/wlr_input_device.h>
+
+/**
+ * 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 <wlr/backend.h>
-#include <wlr/types/wlr_input_device.h>
#include <wlr/types/wlr_output.h>
/**
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 <wayland-server-core.h>
#include <wlr/backend.h>
#include <wlr/backend/session.h>
-#include <wlr/types/wlr_input_device.h>
+
+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 <wayland-client.h>
#include <wayland-server-core.h>
#include <wlr/backend.h>
-#include <wlr/types/wlr_input_device.h>
#include <wlr/types/wlr_output.h>
+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 <wayland-server-core.h>
#include <wlr/backend.h>
-#include <wlr/types/wlr_input_device.h>
#include <wlr/types/wlr_output.h>
+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 <wayland-server-core.h>
-#include <wlr/types/wlr_input_device.h>
#include <wlr/types/wlr_output_layout.h>
#include <wlr/types/wlr_output.h>
+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 <wayland-server-core.h>
#include <wlr/types/wlr_seat.h>
-#include <wlr/types/wlr_input_device.h>
#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 {