I'll make the same point I make every time this topic comes up: there are Chromebooks with great touchpad experiences, and that's been the case for a long, long time. This is not a "Linux" or "open source" problem; this is a problem of ignorance and/or insufficient interest on the part traditional (i.e. non-ChromeOS) distros and their users. It's nuts that this was and continues to be a high-profile, multi-year effort spawning discussions that end up framing the whole thing as elusive—rather than, you know, a solved problem that is pretty much not even worth mentioning but for the long tradition of poor execution.
Hi, I'm the developer behind this effort. I can answer any questions you have.
I can't wait until all proprietary software becomes obsolete due to FLOSS becoming good enough for everyone. From what I see the proprietary operating systems are in decline now, whereas Linux is getting better and better all the time.
Until haptic touchpads become available outside of MacBooks, touchpads are always going to suck under Windows and Linux. Gestures aren’t the main thing preventing me from enjoying the touchpad on my Dell — it’s plenty big and it supports four finger gestures under Windows. The problem is that the entire thing shifts down a couple millimeters when I click and my finger ends up dragging slightly, which moves my click off what I’m clicking on.
I don’t understand how Apple has had a monopoly on this for half a decade. Lenovo had a thinkpad come out last year with a haptic touchpad but I haven’t seen anything further. Is it patents?
Nice, I recently replaced my mac book pro with a cheap Samsung laptop (emergency replacement, the mac died and the new ones are unobtainable currently).
I installed Manjaro on it and it was a relatively OK experience getting that going. I had some issues with the sound that took some "maybe this will work" style copy paste of all sorts of magical cli incantations to get working. But I kind of knew what I was getting into so I'm not disappointed by that. The important thing is that I have a functioning laptop with all my developer toys running.
However, the touchpad support is so awful that I ordered a mouse. I never needed one of those with any macbook I've ever owned. It seems it's impossible to configure the touchpad in a sane way without ending up with piles of custom scripts. E.g. the scrolling speed is way off and I constantly have my single clicks interpreted as middle clicks, which does such fun things as close the browser tab instead of opening it. Simple tasks such as selecting text are made hard because the mechanical pressure needed for the clicks actually tends to move the cursor by enough that you basically mis-click. I briefly used the touchpad under windows before I wiped the disk. So, I know the same touch pad can behave a lot more reasonable given better software.
So, any improvements in this area are very welcome!
Very interesting. I’m running PopOS on my framework, running Wayland— the touchpad gestures is very good. But still not up to par with MacBook. I’m extremely curious as to how this compares.
I think it’s both PopOS’s gestures as well as the hardware (the framework touchpad is quite good!) that has resulted in such a fantastic experience, at least compared to other laptop touchpads I’ve used. Definitely the closest to MacBook gestures I’ve experienced.
I’m working on getting an eGPU setup going so I can properly run X instead of Wayland, and am very excited to try this out.
(Please correct me if I am wrong, but my understanding is Wayland if you’re running integrated graphics, X if you have a GPU)
I always found touchpads on Linux to be quite okay, mice on the other hand… For example, I find scrolling with mice in most browsers on Linux unbearably slow compared to other systems, and there’s no option to speed it up, and overall a lack of customization options when it comes to mice. I’m starting to wonder whether Linux developers don’t use mice, or if there’s something wrong with me or my setup, because I rarely hear about it. And as stupid as it sounds, being able to scroll properly is probably the #1 thing keeping me off Linux desktop right now.
It would be lovely if Firefox supported the two-finger back/forward swipe.
121 sponsors is pitiful.
Consider me in, and I hope everyone in here who honestly wants this to happen considers sponsoring too.
I've been a sponsor of this project on Github for $5/month. That said, I'm more of a consumer rather than a developer. I know my trackpad on Linux seems to sux, and I can't see how anything gets better for consumers on Linux without us paying for work like this. I'm curious for feedback -- is this team making good progress, did you install the code, etc?
Should I double my sponsorship of this project?
I'm left wondering -- isn't this a toolkit/library issue?
I am a bit afraid of seeing gestures handled differently in multiple programs, like inertial scrolling, or pinch-to-zoom speed. At least gestures are always detected by libinput AFAIK, so there's that.
But instead of implementing this in every application, wouldn't it be nicer to implement the common part in a library and link that library to all app that require/want touch handling? This would provide homogeneous behavior, and would allow sharing configuration files.
When running X on a previous Debian version, it was possible to edit the synaptic settings to prevent accidental touchpad touches when typing (along with a lot of other settings to make the user experience excellent).
Now running Wayland on Debian 11/Bullseye (with Gnome), there are only a few possible simple settings (that I can find), and so I have continual issues with window de-focussing due to accidentally touching the touchpad.
Is there anything that I can do now to fix this issue?
(I took a look at the blog post and also the https://neosmart.net/blog/2020/multi-touch-gestures-on-linux... link, but still don't understand the state of things and if my problem is solved by installing any of these new packages.)
edit> The libinput webpage says this: "How do I configure my device on Wayland? See Where is the configuration stored? Use the configuration tool provided by your desktop environment (e.g. gnome-control-center) or direct access to your desktop environment’s configuration storage (e.g. gsettings)."
https://wayland.freedesktop.org/libinput/doc/latest/faqs.htm...
Does this mean that it is not possible to set anything that isn't included in Gnome's minimal settings of libinput?
Here's what I'm looking for:
Solid linux laptop with a macbook style centered keyboard and touch pad. (system76 has offset touchpad / keyboard and it drives me insane)
Near perfect palm detection on the track pad like a macbook.
Does anyone have a recommendation? I've not tried any newer lenovo lappies nor have I tried linux on a Razer laptop which looks very similar to a macbook.
Maybe just wait for linux to run on M1?
I wonder, why nobody is mentioning two-finger scrolling (also inertial scrolling or kinetic scrolling).
Interesting fact: Ubuntu and Fedora have a fully working implementation for this - although scrolling is way too fast, while other distros don't have this. KDE distros also don't have this, even if KDE Wayland is used.
Can anyone tell my, why on Ubuntu and Fedora this works for EVERY app, whereas in other distros using GNOME 40 or 41 (e.g. Arch) it is only working on SOME or NONE of the apps...? Is there a patch for libinput or MUTTER, that is not in the official GNOME repos?
Nice! Thanks for the hard work everyone involved! I have nothing to complain, things just works for me so far, but great to see improvements in the pipe! :D
Looks like a great effort, but there's two things I don't understand:
1. Is this for X only? That's all I see mentioned on the page. If so, that seems like a pretty big waste, Wayland is definitely the way forward and efforts like this will only delay that even further.
2. That said, I use Wayland on my XPS13 in Gnome, and touchpad gestures feel pretty great already, comparable to a MacBook in my opinion.
How do I install it?
Gestures are nice but what I love most about Apple trackpads is everything else. Accidental input avoidance, precision along with speed, registering a click anywhere on the surface…
The gesture I care the most is smooth scrolling, which is a combination of OS graphic and input. Again, nothing smooth scrolls like the Mac or iOS
What I really want to see is support for the `browser.gesture.swipe.*` options in Firefox. Being able to do a multi-finger swipe up to close the tab, left and right to go forward and back made browsing with just a trackpad very pleasant. The only real thing that I miss from macOS on a work laptop.
I mean this in as kind a way as possible: I’m surprised this wasn’t already a solved problem, but I’m glad my Linux using peers will benefit from it.
I have my Ubuntu 18.04 looking like MacOS. The only thing limiting it from really feeling like a Mac is the touchpad.
You can see it here: https://ibb.co/H7khM7h
A good guide for starting out is here: https://linuxconfig.org/how-to-install-macos-theme-on-ubuntu...
That sounds awesome. I remember trying to create a setup using touchegg some years ago, with very little luck
Maybe a dumb question, but why does this need to be supported at UI-library level?
Does anyone know a good external touchpad that would work with this?
why do they prioritize firefox over chrome?
it's a way to not get popular, if you don't support what everyone is using..
Why do touchpads exist? First thing I do is disable them.
Do power users (which tend to use Linux) really use those things?
I wrote a (userland) general purpose and driver/hardware-agnostic multitouch daemon w/ gesture support for Linux that works with the existing input stack (i.e. doesn’t require switching to libinputy but also supports it), if anyone is interested:
https://neosmart.net/blog/2020/multi-touch-gestures-on-linux...
https://github.com/mqudsi/syngesture
The biggest benefit is that you can use drivers with actually correct acceleration curves like xf86-input-synaptics (if you’re on X11) instead of the offensively bad, NIH reimplementation that ships with libinput.
Oh wait, I’m on HN so I shouldn’t neglect to mention my project is written in rust!