aboutsummaryrefslogtreecommitdiff
path: root/include/backend/libinput.h
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2017-06-10 11:58:25 -0400
committerDrew DeVault <sir@cmpwn.com>2017-06-13 08:10:36 -0400
commitf479b7c8c7aa93229c46287f774a30ac8324da1e (patch)
treece81612ee5088ed24ef231577f9e3436188099d3 /include/backend/libinput.h
parent12612572ef9af9686e24bb9af81c31c82bb1f765 (diff)
Split keyboard code out into its own file
Diffstat (limited to 'include/backend/libinput.h')
-rw-r--r--include/backend/libinput.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/include/backend/libinput.h b/include/backend/libinput.h
new file mode 100644
index 00000000..a59ab401
--- /dev/null
+++ b/include/backend/libinput.h
@@ -0,0 +1,38 @@
+#ifndef _WLR_BACKEND_LIBINPUT_INTERNAL_H
+#define _WLR_BACKEND_LIBINPUT_INTERNAL_H
+#include <libinput.h>
+#include <wlr/backend/interface.h>
+#include <wlr/common/list.h>
+#include <wayland-server-core.h>
+#include "backend/udev.h"
+#include "types.h"
+
+struct wlr_backend_state {
+ struct wlr_backend *backend;
+ struct wlr_session *session;
+ struct wlr_udev *udev;
+ struct wl_display *display;
+
+ struct libinput *libinput;
+ struct wl_event_source *input_event;
+
+ list_t *keyboards;
+};
+
+void wlr_libinput_event(struct wlr_backend_state *state,
+ struct libinput_event *event);
+
+struct wlr_input_device *get_appropriate_device(
+ enum wlr_input_device_type desired_type,
+ struct libinput_device *device);
+
+struct wlr_keyboard_state {
+ struct libinput_device *handle;
+};
+
+void handle_keyboard_key(struct libinput_event *event,
+ struct libinput_device *device);
+struct wlr_keyboard *wlr_libinput_keyboard_create(
+ struct libinput_device *device);
+
+#endif