Require libinput 0.4.0
No functional changes, just adjusting for API changes in libinput: - libinput_destroy() replaced by libinput_unref() - log functions now take a libinput context, userdata is gone - udev seat creation is now libinput_udev_create_context() and libinput_udev_assign_seat() Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
committed by
Jonas Ådahl
parent
671a1442a7
commit
3b843d3a61
+1
-1
@@ -160,7 +160,7 @@ AC_ARG_ENABLE(libinput-backend, [ --enable-libinput-backend],,
|
|||||||
AM_CONDITIONAL([ENABLE_LIBINPUT_BACKEND], [test x$enable_libinput_backend = xyes])
|
AM_CONDITIONAL([ENABLE_LIBINPUT_BACKEND], [test x$enable_libinput_backend = xyes])
|
||||||
if test x$enable_libinput_backend = xyes; then
|
if test x$enable_libinput_backend = xyes; then
|
||||||
AC_DEFINE([BUILD_LIBINPUT_BACKEND], [1], [Build the libinput input device backend])
|
AC_DEFINE([BUILD_LIBINPUT_BACKEND], [1], [Build the libinput input device backend])
|
||||||
PKG_CHECK_MODULES(LIBINPUT_BACKEND, [libinput >= 0.3.0])
|
PKG_CHECK_MODULES(LIBINPUT_BACKEND, [libinput >= 0.4.0])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+27
-17
@@ -252,8 +252,9 @@ udev_input_enable(struct udev_input *input)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
libinput_log_func(enum libinput_log_priority priority, void *user_data,
|
libinput_log_func(struct libinput *libinput,
|
||||||
const char *format, va_list args)
|
enum libinput_log_priority priority,
|
||||||
|
const char *format, va_list args)
|
||||||
{
|
{
|
||||||
weston_vlog(format, args);
|
weston_vlog(format, args);
|
||||||
}
|
}
|
||||||
@@ -268,25 +269,34 @@ udev_input_init(struct udev_input *input, struct weston_compositor *c, struct ud
|
|||||||
|
|
||||||
input->compositor = c;
|
input->compositor = c;
|
||||||
|
|
||||||
libinput_log_set_handler(&libinput_log_func, NULL);
|
|
||||||
|
|
||||||
log_priority = getenv("WESTON_LIBINPUT_LOG_PRIORITY");
|
log_priority = getenv("WESTON_LIBINPUT_LOG_PRIORITY");
|
||||||
|
|
||||||
if (log_priority) {
|
input->libinput = libinput_udev_create_context(&libinput_interface,
|
||||||
if (strcmp(log_priority, "debug") == 0) {
|
input, udev);
|
||||||
libinput_log_set_priority(LIBINPUT_LOG_PRIORITY_DEBUG);
|
|
||||||
} else if (strcmp(log_priority, "info") == 0) {
|
|
||||||
libinput_log_set_priority(LIBINPUT_LOG_PRIORITY_INFO);
|
|
||||||
} else if (strcmp(log_priority, "error") == 0) {
|
|
||||||
libinput_log_set_priority(LIBINPUT_LOG_PRIORITY_ERROR);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
input->libinput = libinput_udev_create_for_seat(&libinput_interface, input,
|
|
||||||
udev, seat_id);
|
|
||||||
if (!input->libinput) {
|
if (!input->libinput) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
libinput_log_set_handler(input->libinput, &libinput_log_func);
|
||||||
|
|
||||||
|
if (log_priority) {
|
||||||
|
if (strcmp(log_priority, "debug") == 0) {
|
||||||
|
libinput_log_set_priority(input->libinput,
|
||||||
|
LIBINPUT_LOG_PRIORITY_DEBUG);
|
||||||
|
} else if (strcmp(log_priority, "info") == 0) {
|
||||||
|
libinput_log_set_priority(input->libinput,
|
||||||
|
LIBINPUT_LOG_PRIORITY_INFO);
|
||||||
|
} else if (strcmp(log_priority, "error") == 0) {
|
||||||
|
libinput_log_set_priority(input->libinput,
|
||||||
|
LIBINPUT_LOG_PRIORITY_ERROR);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (libinput_udev_assign_seat(input->libinput, seat_id) != 0) {
|
||||||
|
libinput_unref(input->libinput);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
process_events(input);
|
process_events(input);
|
||||||
|
|
||||||
return udev_input_enable(input);
|
return udev_input_enable(input);
|
||||||
@@ -300,7 +310,7 @@ udev_input_destroy(struct udev_input *input)
|
|||||||
wl_event_source_remove(input->libinput_source);
|
wl_event_source_remove(input->libinput_source);
|
||||||
wl_list_for_each_safe(seat, next, &input->compositor->seat_list, base.link)
|
wl_list_for_each_safe(seat, next, &input->compositor->seat_list, base.link)
|
||||||
udev_seat_destroy(seat);
|
udev_seat_destroy(seat);
|
||||||
libinput_destroy(input->libinput);
|
libinput_unref(input->libinput);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|||||||
Reference in New Issue
Block a user