Compare commits
33 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d46f71c744 | ||
|
|
fa48a97093 | ||
|
|
f74cdffeb4 | ||
|
|
002d51d378 | ||
|
|
140995a228 | ||
|
|
38094a7cc4 | ||
|
|
00ac2e045b | ||
|
|
50e19d0b61 | ||
|
|
5abab2fe82 | ||
|
|
33f4f3ebd7 | ||
|
|
de60b2a048 | ||
|
|
58e71a6895 | ||
|
|
86954d38cd | ||
|
|
879df748c4 | ||
|
|
31bbe71e25 | ||
|
|
d06960eaa2 | ||
|
|
46fb06c084 | ||
|
|
21d9865a91 | ||
|
|
fb6760cd6c | ||
|
|
fb85b1c89c | ||
|
|
225720c01f | ||
|
|
a03c423de4 | ||
|
|
aadcd7507d | ||
|
|
11038cabe3 | ||
|
|
cc59a153ec | ||
|
|
815d9fb80a | ||
|
|
966f3a4aca | ||
|
|
ba22c6ea90 | ||
|
|
ebf6864101 | ||
|
|
af8c3247b4 | ||
|
|
e549107e60 | ||
|
|
acbe31e980 | ||
|
|
0dc838f176 |
4 changed files with 112 additions and 159 deletions
|
|
@ -1,102 +0,0 @@
|
|||
From d61d385951c5678ad18d495358abe952ce359ac9 Mon Sep 17 00:00:00 2001
|
||||
From: Hector Martin <marcan@marcan.st>
|
||||
Date: Sat, 10 Dec 2022 19:40:07 +0900
|
||||
Subject: [PATCH] evdev: Enable natural scrolling by default on Apple
|
||||
|
||||
As suggested by the comment itself. I think most users expect this.
|
||||
|
||||
Signed-off-by: Hector Martin <marcan@marcan.st>
|
||||
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
---
|
||||
src/evdev-mt-touchpad.c | 12 ++++++++++++
|
||||
src/evdev.c | 3 +--
|
||||
test/litest.h | 4 ++++
|
||||
test/test-touchpad.c | 6 ++++--
|
||||
4 files changed, 21 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
|
||||
index b29a5c56..e2ecdea7 100644
|
||||
--- a/src/evdev-mt-touchpad.c
|
||||
+++ b/src/evdev-mt-touchpad.c
|
||||
@@ -3137,12 +3137,24 @@ tp_scroll_config_scroll_method_get_default_method(struct libinput_device *device
|
||||
return tp_scroll_get_default_method(tp);
|
||||
}
|
||||
|
||||
+static int
|
||||
+tp_scroll_config_natural_get_default(struct libinput_device *device)
|
||||
+{
|
||||
+ struct evdev_device *dev = evdev_device(device);
|
||||
+
|
||||
+ return (evdev_device_has_model_quirk(dev, QUIRK_MODEL_APPLE_TOUCHPAD) ||
|
||||
+ evdev_device_has_model_quirk(dev, QUIRK_MODEL_APPLE_TOUCHPAD_ONEBUTTON));
|
||||
+}
|
||||
+
|
||||
static void
|
||||
tp_init_scroll(struct tp_dispatch *tp, struct evdev_device *device)
|
||||
{
|
||||
tp_edge_scroll_init(tp, device);
|
||||
|
||||
evdev_init_natural_scroll(device);
|
||||
+ /* Override natural scroll config for Apple touchpads */
|
||||
+ device->scroll.config_natural.get_default_enabled = tp_scroll_config_natural_get_default;
|
||||
+ device->scroll.natural_scrolling_enabled = tp_scroll_config_natural_get_default(&device->base);
|
||||
|
||||
tp->scroll.config_method.get_methods = tp_scroll_config_scroll_method_get_methods;
|
||||
tp->scroll.config_method.set_method = tp_scroll_config_scroll_method_set_method;
|
||||
diff --git a/src/evdev.c b/src/evdev.c
|
||||
index 524ae9a1..33b3f514 100644
|
||||
--- a/src/evdev.c
|
||||
+++ b/src/evdev.c
|
||||
@@ -957,8 +957,7 @@ evdev_scroll_config_natural_get(struct libinput_device *device)
|
||||
static int
|
||||
evdev_scroll_config_natural_get_default(struct libinput_device *device)
|
||||
{
|
||||
- /* could enable this on Apple touchpads. could do that, could
|
||||
- * very well do that... */
|
||||
+ /* Overridden in evdev-mt-touchpad.c for Apple touchpads. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
diff --git a/test/litest.h b/test/litest.h
|
||||
index baba5cbb..95150831 100644
|
||||
--- a/test/litest.h
|
||||
+++ b/test/litest.h
|
||||
@@ -1064,6 +1064,8 @@ litest_enable_2fg_scroll(struct litest_device *dev)
|
||||
|
||||
expected = LIBINPUT_CONFIG_STATUS_SUCCESS;
|
||||
litest_assert_int_eq(status, expected);
|
||||
+
|
||||
+ libinput_device_config_scroll_set_natural_scroll_enabled(device, 0);
|
||||
}
|
||||
|
||||
static inline void
|
||||
@@ -1077,6 +1079,8 @@ litest_enable_edge_scroll(struct litest_device *dev)
|
||||
|
||||
expected = LIBINPUT_CONFIG_STATUS_SUCCESS;
|
||||
litest_assert_int_eq(status, expected);
|
||||
+
|
||||
+ libinput_device_config_scroll_set_natural_scroll_enabled(device, 0);
|
||||
}
|
||||
|
||||
static inline bool
|
||||
diff --git a/test/test-touchpad.c b/test/test-touchpad.c
|
||||
index c02cb01c..d72ae0fa 100644
|
||||
--- a/test/test-touchpad.c
|
||||
+++ b/test/test-touchpad.c
|
||||
@@ -611,9 +611,11 @@ START_TEST(touchpad_scroll_natural_defaults)
|
||||
{
|
||||
struct litest_device *dev = litest_current_device();
|
||||
|
||||
+ int enabled = libevdev_get_id_vendor(dev->evdev) == VENDOR_ID_APPLE;
|
||||
+
|
||||
ck_assert_int_ge(libinput_device_config_scroll_has_natural_scroll(dev->libinput_device), 1);
|
||||
- ck_assert_int_eq(libinput_device_config_scroll_get_natural_scroll_enabled(dev->libinput_device), 0);
|
||||
- ck_assert_int_eq(libinput_device_config_scroll_get_default_natural_scroll_enabled(dev->libinput_device), 0);
|
||||
+ ck_assert_int_eq(libinput_device_config_scroll_get_natural_scroll_enabled(dev->libinput_device), enabled);
|
||||
+ ck_assert_int_eq(libinput_device_config_scroll_get_default_natural_scroll_enabled(dev->libinput_device), enabled);
|
||||
}
|
||||
END_TEST
|
||||
|
||||
--
|
||||
2.40.0
|
||||
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
From 4a8b5e6ec445b507fc0b1ef9842a60bf13c58772 Mon Sep 17 00:00:00 2001
|
||||
From: Hector Martin <marcan@marcan.st>
|
||||
Date: Thu, 6 Apr 2023 15:33:42 +0900
|
||||
Subject: [PATCH] touchpad: Disable edge palm detection Apple touchpads
|
||||
|
||||
This hurts more than it helps, and users complain of dead trackpad
|
||||
edges. Apple touchpads have fairly sophisticated internal palm rejection
|
||||
algorithms going back many years, so let's just disable this one on
|
||||
everything Apple.
|
||||
|
||||
Related to: #433 (need to figure out what other hardware may need this)
|
||||
|
||||
Signed-off-by: Hector Martin <marcan@marcan.st>
|
||||
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
||||
---
|
||||
src/evdev-mt-touchpad.c | 4 ++++
|
||||
test/litest.h | 2 +-
|
||||
2 files changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/evdev-mt-touchpad.c b/src/evdev-mt-touchpad.c
|
||||
index e2ecdea7..5b040ce5 100644
|
||||
--- a/src/evdev-mt-touchpad.c
|
||||
+++ b/src/evdev-mt-touchpad.c
|
||||
@@ -3350,6 +3350,10 @@ tp_init_palmdetect_edge(struct tp_dispatch *tp,
|
||||
!tp_is_tpkb_combo_below(device))
|
||||
return;
|
||||
|
||||
+ /* Edge palm detection hurts more than it helps on Apple touchpads. */
|
||||
+ if (evdev_device_has_model_quirk(device, QUIRK_MODEL_APPLE_TOUCHPAD))
|
||||
+ return;
|
||||
+
|
||||
evdev_device_get_size(device, &width, &height);
|
||||
|
||||
/* Enable edge palm detection on touchpads >= 70 mm. Anything
|
||||
diff --git a/test/litest.h b/test/litest.h
|
||||
index 95150831..457790b3 100644
|
||||
--- a/test/litest.h
|
||||
+++ b/test/litest.h
|
||||
@@ -1287,7 +1287,7 @@ litest_has_palm_detect_size(struct litest_device *dev)
|
||||
if (bustype == BUS_BLUETOOTH)
|
||||
return 0;
|
||||
if (vendor == VENDOR_ID_APPLE)
|
||||
- return 1;
|
||||
+ return 0;
|
||||
|
||||
rc = libinput_device_get_size(dev->libinput_device, &width, &height);
|
||||
|
||||
--
|
||||
2.40.0
|
||||
|
||||
117
libinput.spec
117
libinput.spec
|
|
@ -4,10 +4,11 @@
|
|||
%global gitversion 58abea394
|
||||
|
||||
Name: libinput
|
||||
Version: 1.23.0
|
||||
Release: 3%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist}
|
||||
Version: 1.30.1
|
||||
Release: 1%{?gitdate:.%{gitdate}git%{gitversion}}%{?dist}
|
||||
Summary: Input device library
|
||||
|
||||
# SPDX
|
||||
License: MIT
|
||||
URL: http://www.freedesktop.org/wiki/Software/libinput/
|
||||
%if 0%{?gitdate}
|
||||
|
|
@ -18,9 +19,6 @@ Source2: commitid
|
|||
Source0: https://gitlab.freedesktop.org/libinput/libinput/-/archive/%{version}/libinput-%{version}.tar.bz2
|
||||
%endif
|
||||
|
||||
Patch0001: 0001-evdev-Enable-natural-scrolling-by-default-on-Apple.patch
|
||||
Patch0002: 0001-touchpad-Disable-edge-palm-detection-Apple-touchpads.patch
|
||||
|
||||
BuildRequires: git-core
|
||||
BuildRequires: gcc
|
||||
BuildRequires: meson
|
||||
|
|
@ -30,7 +28,8 @@ BuildRequires: pkgconfig(libevdev) >= 0.4
|
|||
BuildRequires: pkgconfig(libwacom) >= 0.20
|
||||
BuildRequires: pkgconfig(udev)
|
||||
BuildRequires: python3-rpm-macros
|
||||
BuildRequires: check-devel
|
||||
|
||||
BuildRequires: lua-devel
|
||||
|
||||
%description
|
||||
libinput is a library that handles input devices for display servers and other
|
||||
|
|
@ -76,6 +75,7 @@ intended to be run by users.
|
|||
-Ddocumentation=false \
|
||||
-Dtests=true \
|
||||
-Dinstall-tests=true \
|
||||
-Dautoload-plugins=true \
|
||||
-Dudev-dir=%{udevdir}
|
||||
%meson_build
|
||||
|
||||
|
|
@ -101,6 +101,7 @@ intended to be run by users.
|
|||
%{_libexecdir}/libinput/libinput-debug-events
|
||||
%{_libexecdir}/libinput/libinput-list-devices
|
||||
%{_mandir}/man1/libinput.1*
|
||||
%dir %{_datadir}/libinput
|
||||
%{_datadir}/libinput/*.quirks
|
||||
%dir %{_datadir}/zsh
|
||||
%dir %{_datadir}/zsh/site-functions
|
||||
|
|
@ -115,10 +116,12 @@ intended to be run by users.
|
|||
|
||||
%files utils
|
||||
%{_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
|
||||
%{_libexecdir}/libinput/libinput-debug-tablet
|
||||
%{_libexecdir}/libinput/libinput-debug-tablet-pad
|
||||
%{_libexecdir}/libinput/libinput-list-kernel-devices
|
||||
%{_libexecdir}/libinput/libinput-measure
|
||||
%{_libexecdir}/libinput/libinput-measure-fuzz
|
||||
|
|
@ -130,10 +133,12 @@ intended to be run by users.
|
|||
%{_libexecdir}/libinput/libinput-record
|
||||
%{_libexecdir}/libinput/libinput-replay
|
||||
%{_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*
|
||||
%{_mandir}/man1/libinput-debug-tablet.1*
|
||||
%{_mandir}/man1/libinput-debug-tablet-pad.1*
|
||||
%{_mandir}/man1/libinput-list-kernel-devices.1*
|
||||
%{_mandir}/man1/libinput-measure.1*
|
||||
%{_mandir}/man1/libinput-measure-fuzz.1*
|
||||
|
|
@ -156,6 +161,106 @@ intended to be run by users.
|
|||
|
||||
|
||||
%changelog
|
||||
* Mon Dec 08 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.30.1-1
|
||||
- libinput 1.30.1
|
||||
|
||||
* Tue Nov 25 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.30.0-1
|
||||
- libinput 1.30.0
|
||||
|
||||
* Mon Nov 24 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.902-2
|
||||
- Re-enable plugins on RHEL - lua 5.4 is available
|
||||
|
||||
* Tue Nov 18 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.902-1
|
||||
- libinput 1.29.902 - reenable ppc64le
|
||||
|
||||
* Fri Nov 07 2025 Yaakov Selkowitz <yselkowi@redhat.com> - 1.29.901-3
|
||||
- Disable plugins on RHEL
|
||||
|
||||
* Tue Nov 04 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.901-2
|
||||
- Disable plugins on ppc64le - there's no luajit
|
||||
|
||||
* Tue Nov 04 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.901-1
|
||||
- libinput 1.29.901 - with plugin autoload enabled
|
||||
|
||||
* Tue Oct 21 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.2-1
|
||||
- libinput 1.29.2
|
||||
|
||||
* Thu Aug 28 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.1-1
|
||||
- libinput 1.29.1
|
||||
|
||||
* Thu Jul 31 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.29.0-1
|
||||
- libinput 1.29.0
|
||||
|
||||
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.28.903-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Mon Jul 21 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.903-1
|
||||
- libinput 1.28.903 (#2382208)
|
||||
|
||||
* Thu Jul 17 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.902-1
|
||||
- libinput 1.28.902
|
||||
|
||||
* Wed Jul 16 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.901-3
|
||||
- Fix Alt+PrintScreen not working (#2379912)
|
||||
|
||||
* Tue Jul 15 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.901-2
|
||||
- Fix broken mouse wheel on non-high-resolution devices (#2379768)
|
||||
|
||||
* Thu Jul 10 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.901-1
|
||||
- libinput 1.28.901
|
||||
|
||||
* Tue Apr 01 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.1-1
|
||||
- libinput 1.28.1
|
||||
|
||||
* Mon Mar 24 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.28.0-1
|
||||
- libinput 1.28.0
|
||||
|
||||
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 1.27.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Mon Jan 06 2025 Peter Hutterer <peter.hutterer@redhat.com> - 1.27.1-1
|
||||
- libinput 1.27.1
|
||||
|
||||
* Fri Nov 22 2024 Peter Hutterer <peter.hutterer@redhat.com> - 1.27.0-2
|
||||
- libinput 1.27.0, with sources
|
||||
|
||||
* Tue Nov 19 2024 Peter Hutterer <peter.hutterer@redhat.com> - 1.27.0-1
|
||||
- libinput 1.27.0
|
||||
- drop the check-devel dependency, no longer needed
|
||||
|
||||
* Mon Aug 19 2024 Peter Hutterer <peter.hutterer@redhat.com> - 1.26.2-1
|
||||
- libinput 1.26.2
|
||||
|
||||
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.26.1-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Thu Jun 27 2024 Peter Hutterer <peter.hutterer@redhat.com> - 1.26.1-1
|
||||
- libinput 1.26.1
|
||||
|
||||
* Thu Jun 06 2024 Peter Hutterer <peter.hutterer@redhat.com> 1.26.0-1
|
||||
- libinput 1.26.0
|
||||
|
||||
* Fri May 31 2024 Peter Hutterer <peter.hutterer@redhat.com> - 1.25.0-5
|
||||
- Mark datadir/libinput as owned by us (#2283754)
|
||||
|
||||
* Wed Mar 27 2024 Arthur Bols <arthur@bols.dev> - 1.25.0-4
|
||||
- Add quirk for Framework 16 to recognize keyboard as internal
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.25.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1.25.0-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Mon Jan 15 2024 Peter Hutterer <peter.hutterer@redhat.com> - 1.25.0-1
|
||||
- libinput 1.25
|
||||
|
||||
* Tue Sep 05 2023 Peter Hutterer <peter.hutterer@redhat.com>
|
||||
- SPDX migration: license is already SPDX compatible
|
||||
|
||||
* Fri Aug 25 2023 Peter Hutterer <peter.hutterer@redhat.com> - 1.24.0-1
|
||||
- libinput 1.24.0
|
||||
|
||||
* Thu Jul 20 2023 Peter Hutterer <peter.hutterer@redhat.com> - 1.23.0-3
|
||||
- BuildRequires python3-rpm-macros for pathfix.py
|
||||
|
||||
|
|
|
|||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (libinput-1.23.0.tar.bz2) = cb752d8611d70d9ea26d875aba9db8d0e319e60697aedef1b16295e8180761ce4c8c9635b1aaeb3cfc32d8c5fbe4abfd9a5a4fd29c4b964b25c853c90e816a43
|
||||
SHA512 (libinput-1.30.1.tar.bz2) = 6d9bb5653dfeb0e30c64e92f8146a8908233162ef39f89114f619605b7f0de3f9e0f344412d91c809d3c1dc3d4b836a5709373a80191484db3c6d0a8f69c4f82
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue