Comment by sandreas

Comment by sandreas 9 hours ago

8 replies

I did a lot of research regarding the trackpad situation on modern Linux and there are several reasons the macOS experience feels better for most people.

The most important one is indeed SOFTWARE/DRIVER implementation. Using a hackintosh, the feeling is not the same as a MacBook, but close (depending on which Hardware is used). Furthermore there is ONE UI framework (AppKit?!) which makes implementing things like inertial scolling and rubberbanding pretty easy in one Place. On Linux you have multiple App Frameworks (GTK, QT, ...), which is significantly harder to coordinate and the backwards compatible X11 stuff. Did you know that libinput has only one permanent maintainer (Peter Hutterer)?

Of course the amount of Hardware to support is significantly lower on apples side, which makes optimization easier.

Still, all in all I think the Linux touchpad experience is very close to macOS on my Lenovo T480s with a glass touchpad from a yoga 7 in Arch / GNOME. The only thing that really is not as good and what bothers me From time to time is Palm detection.

Retr0id 7 hours ago

I use Fedora+Gnome on a 2021 MBP and the hardware+firmware+driver+software combination is perfect as far as I'm concerned.

  • sandreas 7 hours ago

    How does the Palm-Detection work? To test this, you can do the following: Place your palm where the X-es are, then try to scroll with two fingers or move your mouse. I don't like that the mouse does not react anymore if the palm is placed there - it should just be ignored.

      ┌─────────────────────────┐
      │XXX                      │
      │XX                       │
      │X                        │
      │                         │
      │                         │
      │                         │
      │                         │
      │                         │
      └─────────────────────────┘
    • ToDougie 5 hours ago

      My Dell Precision laptop running Win11 handles this perfectly. Wish I had tried this sooner :P

    • Retr0id 7 hours ago

      I performed your test and mouse movement and two-finger scrolling still works if my palm is there. Even 3-finger window switching gestures. My palm is effectively ignored.

      • sandreas 4 hours ago

        So this would mean that either my configuration is bad or it might be a hardware limitation. So if you don't mind I would love to see your

          gsettings list-recursively | grep 'peripherals\.touchpad'                                                                                               
        
        Here is mine (before you ask, disable-while-typing=false does not fix my problem) :

          org.gnome.desktop.peripherals.touchpad accel-profile 'default'
          org.gnome.desktop.peripherals.touchpad click-method 'fingers'
          org.gnome.desktop.peripherals.touchpad disable-while-typing true
          org.gnome.desktop.peripherals.touchpad edge-scrolling-enabled false
          org.gnome.desktop.peripherals.touchpad left-handed 'mouse'
          org.gnome.desktop.peripherals.touchpad middle-click-emulation false
          org.gnome.desktop.peripherals.touchpad natural-scroll true
          org.gnome.desktop.peripherals.touchpad send-events 'enabled'
          org.gnome.desktop.peripherals.touchpad speed -0.044999999999999998
          org.gnome.desktop.peripherals.touchpad tap-and-drag true
          org.gnome.desktop.peripherals.touchpad tap-and-drag-lock false
          org.gnome.desktop.peripherals.touchpad tap-button-map 'default'
          org.gnome.desktop.peripherals.touchpad tap-to-click true
          org.gnome.desktop.peripherals.touchpad two-finger-scrolling-enabled true
        • Retr0id 3 hours ago

              org.gnome.desktop.peripherals.touchpad accel-profile 'default'
              org.gnome.desktop.peripherals.touchpad click-method 'fingers'
              org.gnome.desktop.peripherals.touchpad disable-while-typing false
              org.gnome.desktop.peripherals.touchpad edge-scrolling-enabled false
              org.gnome.desktop.peripherals.touchpad left-handed 'mouse'
              org.gnome.desktop.peripherals.touchpad middle-click-emulation false
              org.gnome.desktop.peripherals.touchpad natural-scroll true
              org.gnome.desktop.peripherals.touchpad send-events 'enabled'
              org.gnome.desktop.peripherals.touchpad speed 0.0
              org.gnome.desktop.peripherals.touchpad tap-and-drag true
              org.gnome.desktop.peripherals.touchpad tap-and-drag-lock false
              org.gnome.desktop.peripherals.touchpad tap-button-map 'default'
              org.gnome.desktop.peripherals.touchpad tap-to-click false
              org.gnome.desktop.peripherals.touchpad two-finger-scrolling-enabled true
          
          I have a feeling the magic here is happening in apple firmware, rather than driver or software.
      • philjohn an hour ago

        OK, now move your palm over half, and then over 3 quarters of the trackpad. Two fingers to scroll still works.

      • [removed] 3 hours ago
        [deleted]