mirror of
https://gitlab.freedesktop.org/libinput/libinput.git
synced 2025-12-30 21:10:08 +01:00
This tool helps with tracking button states and time deltas
between button events. Example output for a mouse with LMR buttons
recorded (the mouse also has BTN_SIDE and BTN_EXTRA):
Timestamp │ Delta │ L │ R │ M │ S │ E
0.596112 │ 0ms │ ┬ │ │ │ │
0.689096 │ 92ms │ ┴ │ │ │ │
1.129056 │ 439ms │ ┬ │ │ │ │
1.308178 │ 179ms │ ┴ │ │ │ │
1.469149 │ 0ms │ ┬ │ │ │ │
1.598096 │ 128ms │ ┴ │ │ │ │
1.862125 │ 264ms │ ┬ │ │ │ │
2.084234 │ 222ms │ │ │ ┬ │ │ │
2.415224 │ 330ms │ │ │ ┴ │ │ │
2.831227 │ 416ms │ │ │ ┬ │ │ │
3.215067 │ 383ms │ ┴ │ │ │ │ │
3.525230 │ 310ms │ ┬ │ │ │ │ │
3.629006 │ 103ms │ ┴ │ │ │ │ │
3.813078 │ 184ms │ ┬ │ │ │ │ │
3.909170 │ 96ms │ ┴ │ │ │ │ │
4.093180 │ 184ms │ ┬ │ │ │ │ │
4.317036 │ 223ms │ ┴ │ │ │ │ │
4.507175 │ 190ms │ ┬ │ │ │ │ │
4.587105 │ 79ms │ │ │ ┴ │ │ │
4.779211 │ 192ms │ ┴ │ │ │ │
5.075239 │ 296ms │ │ │ ┬ │ │
5.259097 │ 183ms │ │ │ ┴ │ │
5.379082 │ 119ms │ │ │ ┬ │ │
5.483044 │ 103ms │ │ │ ┴ │ │
The default behavior is to highlight time deltas below 25ms
in red. 25ms is our higher debounce timeout.
Note that the delta time is the one between button events, ignoring any
e.g. motion events in between.
Part-of: <https://gitlab.freedesktop.org/libinput/libinput/-/merge_requests/1010>
147 lines
4.6 KiB
RPMSpec
147 lines
4.6 KiB
RPMSpec
# This specfile should not be used outside the CI
|
|
# Its main purpose is to sound alarm if files disappear or are added that
|
|
# weren't intended.
|
|
|
|
%global udevdir %(pkg-config --variable=udevdir udev)
|
|
|
|
%global pipelineid @PIPELINEID@
|
|
%global gitversion @GITVERSION@
|
|
|
|
Name: libinput
|
|
Version: @VERSION@
|
|
Release: %{pipelineid}git%{gitversion}%{?dist}
|
|
Summary: Input device library
|
|
|
|
License: MIT
|
|
URL: http://www.freedesktop.org/wiki/Software/libinput/
|
|
Source0: %{name}-%{version}.tar.xz
|
|
|
|
# No BuildRequires, we rely on the container setup to have
|
|
# all the requires installed
|
|
|
|
%description
|
|
libinput is a library that handles input devices for display servers and other
|
|
applications that need to directly deal with input devices.
|
|
|
|
It provides device detection, device handling, input device event processing
|
|
and abstraction so minimize the amount of custom input code the user of
|
|
libinput need to provide the common set of functionality that users expect.
|
|
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
%description devel
|
|
The %{name}-devel package contains libraries and header files for
|
|
developing applications that use %{name}.
|
|
|
|
%package utils
|
|
Summary: Utilities and tools for debugging %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Requires: python3-pyudev python3-libevdev
|
|
|
|
%description utils
|
|
The %{name}-utils package contains tools to debug hardware and analyze
|
|
%{name}.
|
|
|
|
%package test
|
|
Summary: libinput integration test suite
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
%description test
|
|
The %{name}-test package contains the libinput test suite. It is not
|
|
intended to be run by users.
|
|
|
|
%prep
|
|
%autosetup -S git -n %{name}-%{version}
|
|
|
|
%build
|
|
%meson -Dtests=true \
|
|
-Dinstall-tests=true \
|
|
-Dudev-dir=%{udevdir}
|
|
%meson_build
|
|
|
|
%install
|
|
%meson_install
|
|
|
|
%post
|
|
%{?ldconfig}
|
|
|
|
%ldconfig_postun
|
|
|
|
|
|
%files
|
|
%doc COPYING
|
|
%dir %{_sysconfdir}/libinput
|
|
%{_libdir}/libinput.so.*
|
|
%{udevdir}/libinput-device-group
|
|
%{udevdir}/libinput-fuzz-extract
|
|
%{udevdir}/libinput-fuzz-to-zero
|
|
%{udevdir}/rules.d/80-libinput-device-groups.rules
|
|
%{udevdir}/rules.d/90-libinput-fuzz-override.rules
|
|
%{_bindir}/libinput
|
|
%dir %{_libexecdir}/libinput/
|
|
%{_libexecdir}/libinput/libinput-debug-events
|
|
%{_libexecdir}/libinput/libinput-list-devices
|
|
%{_mandir}/man1/libinput.1*
|
|
%{_datadir}/libinput/*.quirks
|
|
%dir %{_datadir}/zsh
|
|
%dir %{_datadir}/zsh/site-functions
|
|
%{_datadir}/zsh/site-functions/*
|
|
%{_mandir}/man1/libinput-list-devices.1*
|
|
%{_mandir}/man1/libinput-debug-events.1*
|
|
|
|
%files devel
|
|
%{_includedir}/libinput.h
|
|
%{_libdir}/libinput.so
|
|
%{_libdir}/pkgconfig/libinput.pc
|
|
|
|
%files utils
|
|
%{_libexecdir}/libinput/libinput-debug-gui
|
|
%{_libexecdir}/libinput/libinput-debug-tablet
|
|
%{_libexecdir}/libinput/libinput-list-kernel-devices
|
|
%{_libexecdir}/libinput/libinput-measure
|
|
%{_libexecdir}/libinput/libinput-measure-fuzz
|
|
%{_libexecdir}/libinput/libinput-measure-touchpad-tap
|
|
%{_libexecdir}/libinput/libinput-measure-touchpad-pressure
|
|
%{_libexecdir}/libinput/libinput-measure-touch-size
|
|
%{_libexecdir}/libinput/libinput-measure-touchpad-size
|
|
%{_libexecdir}/libinput/libinput-quirks
|
|
%{_libexecdir}/libinput/libinput-record
|
|
%{_libexecdir}/libinput/libinput-replay
|
|
%{_libexecdir}/libinput/libinput-analyze
|
|
%{_libexecdir}/libinput/libinput-analyze-buttons
|
|
%{_libexecdir}/libinput/libinput-analyze-per-slot-delta
|
|
%{_libexecdir}/libinput/libinput-analyze-recording
|
|
%{_libexecdir}/libinput/libinput-analyze-touch-down-state
|
|
%{_mandir}/man1/libinput-debug-gui.1*
|
|
%{_mandir}/man1/libinput-debug-tablet.1*
|
|
%{_mandir}/man1/libinput-list-kernel-devices.1*
|
|
%{_mandir}/man1/libinput-measure.1*
|
|
%{_mandir}/man1/libinput-measure-fuzz.1*
|
|
%{_mandir}/man1/libinput-measure-touchpad-tap.1*
|
|
%{_mandir}/man1/libinput-measure-touch-size.1*
|
|
%{_mandir}/man1/libinput-measure-touchpad-size.1*
|
|
%{_mandir}/man1/libinput-measure-touchpad-pressure.1*
|
|
%{_mandir}/man1/libinput-quirks.1*
|
|
%{_mandir}/man1/libinput-quirks-list.1*
|
|
%{_mandir}/man1/libinput-quirks-validate.1*
|
|
%{_mandir}/man1/libinput-record.1*
|
|
%{_mandir}/man1/libinput-replay.1*
|
|
%{_mandir}/man1/libinput-analyze.1*
|
|
%{_mandir}/man1/libinput-analyze-buttons.1*
|
|
%{_mandir}/man1/libinput-analyze-per-slot-delta.1*
|
|
%{_mandir}/man1/libinput-analyze-recording.1*
|
|
%{_mandir}/man1/libinput-analyze-touch-down-state.1*
|
|
|
|
%files test
|
|
%{_libexecdir}/libinput/libinput-test
|
|
%{_libexecdir}/libinput/libinput-test-suite
|
|
%{_libexecdir}/libinput/libinput-test-utils
|
|
%{_mandir}/man1/libinput-test.1*
|
|
%{_mandir}/man1/libinput-test-suite.1*
|
|
|
|
%changelog
|
|
* Wed Jul 15 2020 Peter Hutterer <peter.hutterer@redhat.com>
|
|
- Add basic spec file for package build testing
|