From: Jonas Ådahl Date: Tue, 22 Jul 2014 20:49:41 +0000 (+0200) Subject: libinput: Add tap configuration to weston.ini X-Git-Tag: upstream/0.1.8~115 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=05e4a1f768bbeecb357a449924cd8a9f2b6b0112;p=profile%2Fivi%2Fweston-ivi-shell.git libinput: Add tap configuration to weston.ini Enable by adding the following to your weston.ini: [libinput] enable_tap=true This also makes weston require libinput >= 0.5.0. Signed-off-by: Jonas Ådahl --- diff --git a/configure.ac b/configure.ac index 1938078..354db14 100644 --- a/configure.ac +++ b/configure.ac @@ -160,7 +160,7 @@ AC_ARG_ENABLE(libinput-backend, [ --enable-libinput-backend],, AM_CONDITIONAL([ENABLE_LIBINPUT_BACKEND], [test x$enable_libinput_backend = xyes]) if test x$enable_libinput_backend = xyes; then AC_DEFINE([BUILD_LIBINPUT_BACKEND], [1], [Build the libinput input device backend]) - PKG_CHECK_MODULES(LIBINPUT_BACKEND, [libinput >= 0.4.0]) + PKG_CHECK_MODULES(LIBINPUT_BACKEND, [libinput >= 0.5.0]) fi diff --git a/src/libinput-device.c b/src/libinput-device.c index 2ba4ec3..6e50eeb 100644 --- a/src/libinput-device.c +++ b/src/libinput-device.c @@ -297,6 +297,29 @@ evdev_device_set_output(struct evdev_device *device, &device->output_destroy_listener); } +static void +configure_device(struct evdev_device *device) +{ + struct weston_compositor *compositor = device->seat->compositor; + struct weston_config_section *s; + int enable_tap; + int enable_tap_default; + + s = weston_config_get_section(compositor->config, + "libinput", NULL, NULL); + + if (libinput_device_config_tap_get_finger_count(device->device) > 0) { + enable_tap_default = + libinput_device_config_tap_get_default_enabled( + device->device); + weston_config_section_get_bool(s, "enable_tap", + &enable_tap, + enable_tap_default); + libinput_device_config_tap_set_enabled(device->device, + enable_tap); + } +} + struct evdev_device * evdev_device_create(struct libinput_device *libinput_device, struct weston_seat *seat) @@ -330,6 +353,8 @@ evdev_device_create(struct libinput_device *libinput_device, libinput_device_set_user_data(libinput_device, device); libinput_device_ref(libinput_device); + configure_device(device); + return device; } diff --git a/weston.ini.in b/weston.ini.in index 03fbde2..4fca0bb 100644 --- a/weston.ini.in +++ b/weston.ini.in @@ -61,6 +61,9 @@ path=@libexecdir@/weston-keyboard #mode=1024x768 #transform=flipped-90 +#[libinput] +#enable_tap=true + #[touchpad] #constant_accel_factor = 50 #min_accel_factor = 0.16