forked from kiss-community/repo
115 lines
3.2 KiB
Diff
115 lines
3.2 KiB
Diff
|
diff --git a/src/evdev.c b/src/evdev.c
|
||
|
index 0f892b8..12fdaf2 100644
|
||
|
--- a/src/evdev.c
|
||
|
+++ b/src/evdev.c
|
||
|
@@ -133,6 +133,17 @@ evdev_update_key_down_count(struct evdev_device *device,
|
||
|
return key_count;
|
||
|
}
|
||
|
|
||
|
+int
|
||
|
+evdev_event_code_from_name(unsigned int type, const char *name)
|
||
|
+{
|
||
|
+ return libevdev_event_code_from_name(type, name);
|
||
|
+}
|
||
|
+
|
||
|
+const char *
|
||
|
+evdev_event_code_get_name (unsigned int type, unsigned int code) {
|
||
|
+ return libevdev_event_code_get_name(type, code);
|
||
|
+}
|
||
|
+
|
||
|
enum libinput_switch_state
|
||
|
evdev_device_switch_get_state(struct evdev_device *device,
|
||
|
enum libinput_switch sw)
|
||
|
diff --git a/src/evdev.h b/src/evdev.h
|
||
|
index 0a4798f..352c22b 100644
|
||
|
--- a/src/evdev.h
|
||
|
+++ b/src/evdev.h
|
||
|
@@ -401,6 +401,12 @@ evdev_device_has_model_quirk(struct evdev_device *device,
|
||
|
return result;
|
||
|
}
|
||
|
|
||
|
+int
|
||
|
+evdev_event_code_from_name(unsigned int type, const char *name);
|
||
|
+
|
||
|
+const char *
|
||
|
+evdev_event_code_get_name (unsigned int type, unsigned int code);
|
||
|
+
|
||
|
void
|
||
|
evdev_transform_absolute(struct evdev_device *device,
|
||
|
struct device_coords *point);
|
||
|
diff --git a/src/libinput.c b/src/libinput.c
|
||
|
index b4164e2..b2ff1f3 100644
|
||
|
--- a/src/libinput.c
|
||
|
+++ b/src/libinput.c
|
||
|
@@ -310,6 +310,17 @@ log_msg_ratelimit(struct libinput *libinput,
|
||
|
us2ms(ratelimit->interval));
|
||
|
}
|
||
|
|
||
|
+LIBINPUT_EXPORT int
|
||
|
+libinput_event_code_from_name(unsigned int type, const char *name)
|
||
|
+{
|
||
|
+ return evdev_event_code_from_name(type, name);
|
||
|
+}
|
||
|
+
|
||
|
+LIBINPUT_EXPORT const char *
|
||
|
+libinput_event_code_get_name (unsigned int type, unsigned int code) {
|
||
|
+ return evdev_event_code_get_name(type, code);
|
||
|
+}
|
||
|
+
|
||
|
LIBINPUT_EXPORT void
|
||
|
libinput_log_set_priority(struct libinput *libinput,
|
||
|
enum libinput_log_priority priority)
|
||
|
diff --git a/src/libinput.h b/src/libinput.h
|
||
|
index a15d627..edb8849 100644
|
||
|
--- a/src/libinput.h
|
||
|
+++ b/src/libinput.h
|
||
|
@@ -416,6 +416,35 @@ enum libinput_tablet_tool_tip_state {
|
||
|
*/
|
||
|
struct libinput_tablet_pad_mode_group;
|
||
|
|
||
|
+
|
||
|
+/**
|
||
|
+ * @ingroup base
|
||
|
+ *
|
||
|
+ * A wrapper around libevdev_event_code_from_name for use in sway.
|
||
|
+ * For use in KISS Linux.
|
||
|
+ *
|
||
|
+ * @param type The event type (EV_* constant) where to look for the name.
|
||
|
+ * @param name A non-NULL string describing an input-event code, zero-terminated.
|
||
|
+ *
|
||
|
+ * @return The given code constant for the passed name or -1 if not found.
|
||
|
+ */
|
||
|
+int
|
||
|
+libinput_event_code_from_name(unsigned int type, const char *name);
|
||
|
+
|
||
|
+/**
|
||
|
+ * @ingroup base
|
||
|
+ *
|
||
|
+ * A wrapper around libevdev_event_code_get_name for use in sway.
|
||
|
+ * For use in KISS Linux.
|
||
|
+ *
|
||
|
+ * @param type The event type for the code to query (EV_SYN, EV_REL, etc.)
|
||
|
+ * @param code The event code to return the name for (e.g. ABS_X)
|
||
|
+ *
|
||
|
+ * @return The name of the given event code or NULL for an invalid type or code.
|
||
|
+ */
|
||
|
+const char *
|
||
|
+libinput_event_code_get_name(unsigned int type, unsigned int code);
|
||
|
+
|
||
|
/**
|
||
|
* @ingroup tablet_pad_modes
|
||
|
*
|
||
|
diff --git a/src/libinput.sym b/src/libinput.sym
|
||
|
index b45838e..ce88063 100644
|
||
|
--- a/src/libinput.sym
|
||
|
+++ b/src/libinput.sym
|
||
|
@@ -61,6 +61,8 @@ global:
|
||
|
libinput_device_set_user_data;
|
||
|
libinput_device_unref;
|
||
|
libinput_dispatch;
|
||
|
+ libinput_event_code_from_name;
|
||
|
+ libinput_event_code_get_name;
|
||
|
libinput_event_destroy;
|
||
|
libinput_event_device_notify_get_base_event;
|
||
|
libinput_event_get_context;
|