Compare commits

...

19 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
80daaadd99 release 25.0.0
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 18:39:48 +01:00
Enrico Weigelt, metux IT consult
c3aaef48de drop obsolete .editorconfig
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 17:50:52 +01:00
Enrico Weigelt, metux IT consult
5a94e12c38 configure.ac: replace DRIVER_NAME symbol by actual name
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 12:31:55 +01:00
Enrico Weigelt, metux IT consult
aa23b2079f drop obsolete .gitlab-ci.yml
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 11:49:28 +01:00
Enrico Weigelt, metux IT consult
6b692e3e1b drop obsolete HAVE_CONFIG_H
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-17 19:02:35 +01:00
Enrico Weigelt, metux IT consult
87f63feb24 drop xorg-libinput.pc
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-17 18:46:55 +01:00
Enrico Weigelt, metux IT consult
dcfbe775cd release 1.5.2
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-16 14:44:01 +01:00
Enrico Weigelt, metux IT consult
f86600edd0 man: replace Xorg by XLibre
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-16 13:45:09 +01:00
Enrico Weigelt, metux IT consult
771cada821 README.md: fix URLs
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-16 11:08:13 +01:00
GermanAizek
d07bc60926 libinput: option tapping by default enabled
This fix helps most laptop users not to change properties in config.

Issue: https://github.com/X11Libre/xf86-input-libinput/issues/6
Signed-off-by: Herman Semenov <GermanAizek@yandex.ru>
2025-12-15 17:16:01 +01:00
Oleh Nykyforchyn
4f163b3f73 xf86-input-libinput: make Emulate3Buttons a synonym for MiddleEmulation
This patch in intended to ease transition form evdev to libinput as
the primary driver for mice.

Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
2025-12-15 17:15:16 +01:00
Enrico Weigelt, metux IT consult
112263280f fix warning on unhandled values
> /builds/metux/xf86-input-libinput/_builddir/../src/xf86libinput.c:2617:9: warning: enumeration value 'LIBINPUT_EVENT_TABLET_PAD_KEY' not handled in switch [-Wswitch]
>  2617 |         switch (type) {
>       |         ^~~~~~
> /builds/metux/xf86-input-libinput/_builddir/../src/xf86libinput.c:2617:9: warning: enumeration value 'LIBINPUT_EVENT_GESTURE_HOLD_BEGIN' not handled in switch [-Wswitch]
> /builds/metux/xf86-input-libinput/_builddir/../src/xf86libinput.c:2617:9: warning: enumeration value 'LIBINPUT_EVENT_GESTURE_HOLD_END' not handled in switch [-Wswitch]

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 17:15:03 +01:00
Enrico Weigelt, metux IT consult
5d27c689bf fix struct name clash with Xserver SDK
> /builds/metux/xf86-input-libinput/_builddir/../src/xf86libinput.c: In function 'xf86libinput_set_pressure_range':
> /builds/metux/xf86-input-libinput/_builddir/../src/xf86libinput.c:465:53: warning: declaration of 'range' shadows a global declaration [-Wshadow]
>   465 |                                 const struct range *range)
>       |                                 ~~~~~~~~~~~~~~~~~~~~^~~~~
> In file included from /usr/include/xorg/xf86.h:44,
>                  from /builds/metux/xf86-input-libinput/_builddir/../src/xf86libinput.c:36:
> /usr/include/xorg/xf86str.h:110:3: note: shadowed declaration is here
>   110 | } range;
>       |   ^~~~~

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 17:14:55 +01:00
Enrico Weigelt, metux IT consult
8c2a8fa56c disable pointless warnings
Add -Wno-declaration-after-statement for suppressing pointless warnings
on declarations after statement.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 17:14:48 +01:00
Enrico Weigelt, metux IT consult
ada1d2ed6c util-strings: drop unused str_sanitize()
Not used anywhere.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 17:14:27 +01:00
Peter Hutterer
0f6cc09321 Add support for the libinput plugin system
This is hardcoded to be enabled from the default paths (/usr/share and
/etc) without any extra paths. If there is a need we can add xorg.conf
options later but for now it will do.

Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/merge_requests/73>
2025-12-15 14:05:20 +01:00
Peter Hutterer
733692c9ce meson.build: add dep_libinput as dependency for the KANA check
So meson can find the libinput.h header if libinput is in a nonstandard
path.

Fixes: 0bcb60e744 ("Add support for LIBINPUT_LED_COMPOSE/LIBINPUT_LED_KANA")
Part-of: <https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/-/merge_requests/72>
2025-12-15 13:54:48 +01:00
Enrico Weigelt, metux IT consult
e0c4e1afc4 configure.ac: fix package name and issue tracker URL
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 13:39:29 +01:00
Enrico Weigelt, metux IT consult
577d0600c4 util-strings: don't crash the Xserver on memory alloc failure
It's only consumer already properly checking for NULL return value,
so can directly use calloc() here, instead of zalloc() which is
crashing the Xserver.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-09 13:55:56 +01:00
17 changed files with 88 additions and 234 deletions

View File

@@ -1,17 +0,0 @@
# https://editorconfig.org/
root = true
[*]
charset = utf-8
end_of_line = lf
trim_trailing_whitespace = true
insert_final_newline = true
[*.{c,h}]
indent_size = 8
indent_style = tab
[{meson.build,meson_options.txt}]
indent_size = 8
indent_style = tab

View File

@@ -1,98 +0,0 @@
# vim: set expandtab shiftwidth=2 tabstop=8 textwidth=0 filetype=yaml:
#
# This CI uses the freedesktop.org ci-templates.
# Please see the ci-templates documentation for details:
# https://freedesktop.pages.freedesktop.org/ci-templates/
.templates_sha: &template_sha 84052757dacc5fd65f5ace92b7fe63c60f6c8558 # see https://docs.gitlab.com/ee/ci/yaml/#includefile
include:
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/fedora.yml'
- project: 'freedesktop/ci-templates'
ref: *template_sha
file: '/templates/ci-fairy.yml'
- template: Security/SAST.gitlab-ci.yml
variables:
FDO_UPSTREAM_REPO: xorg/driver/xf86-input-libinput
stages:
- containers
- build
- test
.fedora:
variables:
FDO_DISTRIBUTION_VERSION: 39
FDO_DISTRIBUTION_PACKAGES: 'git autoconf automake libtool make xorg-x11-server-devel libudev-devel libevdev-devel libinput-devel xorg-x11-util-macros diffutils'
FDO_DISTRIBUTION_EXEC: 'env FDO_CI_CONCURRENT=${FDO_CI_CONCURRENT} bash .gitlab-ci/fedora-install.sh'
FDO_DISTRIBUTION_TAG: '2025-04-01.0'
fedora@container_build:
extends:
- .fedora
- .fdo.container-build@fedora
stage: containers
variables:
GIT_STRATEGY: none
.default_build:
stage: build
script:
- mkdir _builddir _inst
- pushd _builddir > /dev/null
- ../autogen.sh --prefix=$(realpath ../_inst) --disable-silent-rules
- make && make check
- make install
- popd > /dev/null
artifacts:
name: "automake-logs-$CI_JOB_NAME"
when: always
expire_in: 1 week
paths:
- _builddir/config.log
fedora@default-build:
extends:
- .fedora
- .fdo.distribution-image@fedora
- .default_build
#
# Verify that commit messages are as expected
#
check-commits:
extends:
- .fdo.ci-fairy
stage: test
script:
- ci-fairy check-commits --junit-xml=results.xml
except:
- master@xorg/driver/xf86-input-libinput
variables:
GIT_DEPTH: 100
artifacts:
reports:
junit: results.xml
allow_failure: true
#
# Verify that the merge request has the allow-collaboration checkbox ticked
#
check-merge-request:
extends:
- .fdo.ci-fairy
stage: test
script:
- ci-fairy check-merge-request --require-allow-collaboration --junit-xml=results.xml
artifacts:
when: on_failure
reports:
junit: results.xml
allow_failure: true

View File

@@ -27,9 +27,6 @@ DISTCHECK_CONFIGURE_FLAGS = --with-xorg-module-dir='$${libdir}/xorg/modules' \
SUBDIRS = src include man test
MAINTAINERCLEANFILES = ChangeLog INSTALL
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = xorg-libinput.pc
dist_xorgconf_DATA = conf/40-libinput.conf
.PHONY: ChangeLog INSTALL

View File

@@ -2,7 +2,8 @@ xf86-input-libinput - a libinput-based X driver
===============================================
The official repository for this driver is
https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput
https://github.com/X11Libre/xf86-input-evdev
This is an X driver based on libinput. It is a thin wrapper around libinput,
so while it does provide all features that libinput supports it does little
@@ -12,19 +13,6 @@ beyond.
usable input devices in your X session. Use with caution.***
Prerequisites
-------------
To build, you'll need the X.Org X server SDK (check your distribution for a
xorg-x11-server-devel package or similar) and libinput (check your
distribution for libinput-devel or similar).
To get libinput from source, see:
https://www.freedesktop.org/wiki/Software/libinput/
To build the X server from source:
https://www.x.org/wiki/Building_the_X_Window_System/
Building
--------
@@ -43,13 +31,3 @@ Install the default configuration file:
cp conf/99-libinput.conf /etc/X11/xorg.conf.d/
This will assign this driver to *all* devices. Use with caution.
Bugs
----
Bugs in libinput go to the Issues section of the libinput gitlab project:
https://gitlab.freedesktop.org/libinput/libinput/issues
Bugs in this driver go to the Issues section of its gitlab project:
https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/issues

View File

@@ -22,10 +22,10 @@
# Initialize Autoconf
AC_PREREQ([2.60])
AC_INIT([xf86-input-libinput],
[1.5.0],
[https://gitlab.freedesktop.org/xorg/driver/xf86-input-libinput/issues],
[xf86-input-libinput])
AC_INIT([xlibre-xf86-input-libinput],
[25.0.0],
[https://github.com/X11Libre/xf86-input-libinput/issues],
[xlibre-xf86-input-libinput])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_AUX_DIR(.)
@@ -43,6 +43,8 @@ m4_ifndef([XORG_MACROS_VERSION],
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
CFLAGS="$CFLAGS -Wno-declaration-after-statement"
# Obtain compiler/linker options from server and required extensions
PKG_CHECK_MODULES(XORG, [xorg-server >= 1.19] xproto [inputproto >= 2.2])
PKG_CHECK_MODULES(LIBINPUT, [libinput >= 1.11.0])
@@ -111,6 +113,17 @@ AC_LINK_IFELSE(
[AC_MSG_RESULT([no])
[libinput_have_clickfinger_button_map=no]])
AC_MSG_CHECKING([if libinput_plugin_system_load is available])
AC_LINK_IFELSE(
[AC_LANG_PROGRAM([[#include <libinput.h>]],
[[libinput_plugin_system_load_plugins(NULL, 0)]])],
[AC_MSG_RESULT([yes])
AC_DEFINE(HAVE_LIBINPUT_PLUGINS, [1],
[libinput_plugin_system_load_plugins() is available])
[libinput_have_plugin_system=yes]],
[AC_MSG_RESULT([no])
[libinput_have_plugin_system=no]])
LIBS=$OLD_LIBS
CFLAGS=$OLD_CFLAGS
@@ -139,13 +152,10 @@ sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server`
AC_ARG_WITH([sdkdir], [], [sdkdir="$withval"])
AC_SUBST([sdkdir])
DRIVER_NAME=libinput
AC_SUBST([DRIVER_NAME])
AC_CONFIG_FILES([Makefile
include/Makefile
src/Makefile
man/Makefile
test/Makefile
xorg-libinput.pc])
])
AC_OUTPUT

View File

@@ -22,11 +22,11 @@
drivermandir = $(DRIVER_MAN_DIR)
driverman_PRE = $(DRIVER_NAME).man
driverman_PRE = libinput.man
driverman_DATA = $(driverman_PRE:man=$(DRIVER_MAN_SUFFIX))
EXTRA_DIST = $(DRIVER_NAME).man
EXTRA_DIST = libinput.man
CLEANFILES = $(driverman_DATA)

View File

@@ -21,7 +21,7 @@ If you are looking for the library documentation, go to
.SH DESCRIPTION
.B libinput
is an Xorg input driver based on libinput.
is an XLibre input driver based on libinput.
It therefore supports all input devices that libinput can handle, including
most mice, keyboards, tablets and touchscreens.
.PP
@@ -178,6 +178,15 @@ Enables left-handed button orientation, i.e. swapping left and right buttons.
Enables middle button emulation.
When enabled, pressing the left and right
buttons simultaneously produces a middle mouse button click.
A synonym
.IP
.BI "Option \*qEmulate3Buttons\*q \*q" bool \*q
.IP
is preserved for compatibility with
.B evdev
driver, with
.BI "\*qMiddleEmulation\*q
having preference if both are set.
.TP 7
.BI "Option \*qNaturalScrolling\*q \*q" bool \*q
Enables or disables natural scrolling behavior.
@@ -468,13 +477,13 @@ button mapping of
.B "\*q3 2 1 ...\*q"
On systems using the
.B libinput
Xorg input driver it is recommended to use the
XLibre input driver it is recommended to use the
.B LeftHanded
option instead.
.PP
The
.B libinput
Xorg input driver does not use the button mapping after setup.
XLibre input driver does not use the button mapping after setup.
Use
.BR XSetPointerMapping (3)
to modify the button mapping at runtime.
@@ -597,7 +606,7 @@ appropriate \fBMatch*\fR statement in the
.SH AUTHORS
Peter Hutterer
.SH "SEE ALSO"
.BR Xorg (1),
.BR XLibre (1),
.BR xorg.conf (5),
.BR Xserver (1),
.BR X (7)

View File

@@ -1,11 +1,10 @@
project('xf86-input-libinput', 'c',
version: '1.5.0', # bump version in configure.ac
version: '25.0.0',
default_options: ['warning_level=2'],
meson_version: '>= 0.50.0')
driver_version = meson.project_version().split('.')
dir_pkgconf = get_option('prefix') / get_option('libdir') / 'pkgconfig'
dir_man4 = get_option('prefix') / get_option('mandir') / 'man4'
cc = meson.get_compiler('c')
@@ -65,9 +64,13 @@ if cc.has_function('libinput_device_config_click_set_clickfinger_button_map',
dependencies: dep_libinput)
config_h.set('HAVE_LIBINPUT_CLICKFINGER_BUTTON_MAP', 1)
endif
if cc.has_header_symbol('libinput.h', 'LIBINPUT_LED_COMPOSE')
if cc.has_header_symbol('libinput.h', 'LIBINPUT_LED_COMPOSE',
dependencies: dep_libinput)
config_h.set('HAVE_LIBINPUT_COMPOSE_AND_KANA', 1)
endif
if cc.has_function('libinput_plugin_system_load_plugins', dependencies: dep_libinput)
config_h.set('HAVE_LIBINPUT_PLUGINS', 1)
endif
dir_headers = get_option('sdkdir')
if dir_headers == ''
@@ -124,18 +127,6 @@ test_draglock = executable('test-draglock',
install: false)
test('test-draglock', test_draglock)
conf_pkgconf = configuration_data()
conf_pkgconf.set('PACKAGE_VERSION', meson.project_version())
conf_pkgconf.set('sdkdir', dir_headers)
configure_file(
input: 'xorg-libinput.pc.in',
output: 'xorg-libinput.pc',
configuration: conf_pkgconf,
install_dir: dir_pkgconf,
)
config_man = configuration_data()
config_man.set('VERSION', '@0@ @1@'.format(meson.project_name(), meson.project_version()))

View File

@@ -28,12 +28,12 @@
AM_CFLAGS = $(XORG_CFLAGS) $(CWARNFLAGS)
AM_CPPFLAGS =-I$(top_srcdir)/include $(LIBINPUT_CFLAGS)
@DRIVER_NAME@_drv_la_LTLIBRARIES = @DRIVER_NAME@_drv.la
@DRIVER_NAME@_drv_la_LDFLAGS = -module -avoid-version
@DRIVER_NAME@_drv_la_LIBADD = $(LIBINPUT_LIBS) libdraglock.la libbezier.la -lm
@DRIVER_NAME@_drv_ladir = @inputdir@
libinput_drv_la_LTLIBRARIES = libinput_drv.la
libinput_drv_la_LDFLAGS = -module -avoid-version
libinput_drv_la_LIBADD = $(LIBINPUT_LIBS) libdraglock.la libbezier.la -lm
libinput_drv_ladir = @inputdir@
@DRIVER_NAME@_drv_la_SOURCES = \
libinput_drv_la_SOURCES = \
xf86libinput.c \
util-macros.h \
util-strings.h \

View File

@@ -22,10 +22,7 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include <assert.h>
#include <math.h>

View File

@@ -22,10 +22,7 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#ifndef BEZIER_H
#define BEZIER_H

View File

@@ -22,10 +22,7 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#include "draglock.h"

View File

@@ -22,10 +22,7 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
* IN THE SOFTWARE.
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#ifndef DRAGLOCK_H
#define DRAGLOCK_H 1

View File

@@ -122,7 +122,9 @@ strv_from_string(const char *in, const char *separators, size_t *num_elements)
}
size_t strv_len = nelems + 1; /* NULL-terminated */
char **strv = zalloc(strv_len * sizeof *strv);
char **strv = calloc(strv_len, sizeof(*strv));
if (!strv)
return NULL;
size_t idx = 0;
const char *word;

View File

@@ -253,7 +253,10 @@ double_array_from_string(const char *in,
if(!strv)
return result;
double *numv = zalloc(sizeof(double) * nelem);
double *numv = calloc(nelem, sizeof(double));
if (!numv)
goto out;
for (size_t idx = 0; idx < nelem; idx++) {
double val;
if (!safe_atod(strv[idx], &val))
@@ -390,31 +393,3 @@ safe_basename(const char *filename);
char *
trunkname(const char *filename);
/**
* Return a copy of str with all % converted to %% to make the string
* acceptable as printf format.
*/
static inline char *
str_sanitize(const char *str)
{
if (!str)
return NULL;
if (!strchr(str, '%'))
return strdup(str);
size_t slen = min(strlen(str), 512);
char *sanitized = zalloc(2 * slen + 1);
const char *src = str;
char *dst = sanitized;
for (size_t i = 0; i < slen; i++) {
if (*src == '%')
*dst++ = '%';
*dst++ = *src++;
}
*dst = '\0';
return sanitized;
}

View File

@@ -141,6 +141,10 @@ struct accel_points {
};
#endif
struct xf86libinput_pressure_range {
float min, max;
};
struct xf86libinput {
InputInfoPtr pInfo;
char *path;
@@ -199,9 +203,7 @@ struct xf86libinput {
float rotation_angle;
struct bezier_control_point pressurecurve[4];
struct range {
float min, max;
} pressure_range;
struct xf86libinput_pressure_range pressure_range;
struct ratio {
int x, y;
} area;
@@ -467,7 +469,7 @@ xf86libinput_set_pressurecurve(struct xf86libinput *driver_data,
static inline bool
xf86libinput_set_pressure_range(struct xf86libinput *driver_data,
const struct range *rangeopt)
const struct xf86libinput_pressure_range *rangeopt)
{
#if HAVE_LIBINPUT_PRESSURE_RANGE
struct libinput_tablet_tool *tool = driver_data->tablet_tool;
@@ -939,7 +941,7 @@ LibinputApplyConfigPressureRange(DeviceIntPtr dev,
#if HAVE_LIBINPUT_PRESSURE_RANGE
InputInfoPtr pInfo = dev->public.devicePrivate;
struct libinput_tablet_tool *tool = driver_data->tablet_tool;
struct range *rangeopt = &driver_data->options.pressure_range;
struct xf86libinput_pressure_range *rangeopt = &driver_data->options.pressure_range;
if (!subdevice_has_capabilities(dev, CAP_TABLET_TOOL))
return;
@@ -2739,6 +2741,20 @@ xf86libinput_handle_event(struct libinput_event *event)
break;
case LIBINPUT_EVENT_SWITCH_TOGGLE:
break;
/* new libinput events we don't handle yet */
#ifdef LIBINPUT_EVENT_GESTURE_HOLD_BEGIN
case LIBINPUT_EVENT_GESTURE_HOLD_BEGIN:
break;
#endif
#ifdef LIBINPUT_EVENT_GESTURE_HOLD_END
case LIBINPUT_EVENT_GESTURE_HOLD_END:
break;
#endif
#ifdef LIBINPUT_EVENT_TABLET_PAD_KEY
case LIBINPUT_EVENT_TABLET_PAD_KEY:
break;
#endif
}
out:
@@ -3490,13 +3506,17 @@ static inline BOOL
xf86libinput_parse_middleemulation_option(InputInfoPtr pInfo,
struct libinput_device *device)
{
BOOL enabled;
int enabled;
if (!libinput_device_config_middle_emulation_is_available(device))
return FALSE;
enabled = xf86SetBoolOption(pInfo->options,
"MiddleEmulation",
-1); /* returns -1 if the option has not been set */
if (enabled == -1)
enabled = xf86SetBoolOption(pInfo->options,
"Emulate3Buttons",
libinput_device_config_middle_emulation_get_default_enabled(device));
if (libinput_device_config_middle_emulation_set_enabled(device, enabled) !=
LIBINPUT_CONFIG_STATUS_SUCCESS) {
@@ -3685,7 +3705,7 @@ out:
static void
xf86libinput_parse_pressure_range_option(InputInfoPtr pInfo,
struct xf86libinput *driver_data,
struct range *rangeopt)
struct xf86libinput_pressure_range *rangeopt)
{
#if HAVE_LIBINPUT_PRESSURE_RANGE
struct libinput_tablet_tool *tool = driver_data->tablet_tool;
@@ -3874,6 +3894,10 @@ xf86libinput_init_driver_context(void)
/* we want all msgs, let the server filter */
libinput_log_set_priority(driver_context.libinput,
LIBINPUT_LOG_PRIORITY_DEBUG);
#if HAVE_LIBINPUT_PLUGINS
libinput_plugin_system_append_default_paths(driver_context.libinput);
libinput_plugin_system_load_plugins(driver_context.libinput, LIBINPUT_PLUGIN_SYSTEM_FLAG_NONE);
#endif
} else {
libinput_ref(driver_context.libinput);
}
@@ -5384,7 +5408,7 @@ LibinputSetPropertyPressureRange(DeviceIntPtr dev,
InputInfoPtr pInfo = dev->public.devicePrivate;
struct xf86libinput *driver_data = pInfo->private;
float *vals;
struct range rangeopt = { 0.0, 1.0 };
struct xf86libinput_pressure_range rangeopt = { 0.0, 1.0 };
if (val->format != 32 || val->size != 2 || val->type != prop_float)
return BadMatch;
@@ -5642,7 +5666,8 @@ LibinputInitTapProperty(DeviceIntPtr dev,
struct xf86libinput *driver_data,
struct libinput_device *device)
{
BOOL tap = driver_data->options.tapping;
// By default tapping property config is true
BOOL tap = driver_data->options.tapping ? driver_data->options.tapping : TRUE;
if (!subdevice_has_capabilities(dev, CAP_POINTER))
return;
@@ -6663,7 +6688,7 @@ LibinputInitPressureRangeProperty(DeviceIntPtr dev,
{
#if HAVE_LIBINPUT_PRESSURE_RANGE
struct libinput_tablet_tool *tool = driver_data->tablet_tool;
const struct range *rangeopt = &driver_data->options.pressure_range;
const struct xf86libinput_pressure_range *rangeopt = &driver_data->options.pressure_range;
float data[2] = {
rangeopt->min,
rangeopt->max,

View File

@@ -1,6 +0,0 @@
sdkdir=@sdkdir@
Name: xorg-libinput
Description: X.Org libinput input driver.
Version: @PACKAGE_VERSION@
Cflags: -I${sdkdir}