Public bug reported:

On a modern laptop with a large touchpad/clickpad, your palms tend to
brush the touch surface as you type. The problem is that on Ubuntu, this
creates an annoying amount of cursor wiggle. Competing platforms don't
have this problem, so this needs to be improved on Ubuntu.

Part of the problem is that `xserver-xorg-input-synaptics` driver
doesn't do effective palm detection (it seems), and part of the problem
is that `gnome-settings-daemon` launches `syndaemon` such that it
*never* disables cursor movement.

Currently syndaemon is launched like this:

  syndaemon -i 1.0 -t -K -R

The "-t" option tells syndaemon to never block cursor movement. It will
only block accidental vertical scrolling (which is darn near impossible
to do on a modern system with two finger scrolling), and block
accidental tap-to-click (which seems unlikely something you can do by
mistake with your palms). So from a user perspective, "Disable while
typing" currently does nothing.

I'm proposing that syndaemon instead be launched like this:

  syndaemon -i 0.5 -K -R

Without the "-t" option, syndaemon will block cursor movement, vertical
scrolling, and tap-to-click. And the "-i 0.5" means it will block it for
500ms (half a second).

System76 has been shipping a patched `gnome-settings-daemon` (Raring) on
all our products for the last two months, and we've received no support
issues about it (if this caused noticeable usability issues, I'm
confident we'd have heard about it).

We've also done a lot of testing and tuning on the timeout threshold,
and 500ms seems like about the sweet spot. It's long enough to be
decently effective for most typists, but not so long that the user will
catch the trackpad still disabled when they move from typing back to
"cursoring" :P

Note that this isn't a prefect solution, and you really can't do this
especially well with a static timeout anyway (would be better to be
dynamic based on typing speed). For slow typists, 500ms often isn't long
enough. But for now, I feel it's better to find that sweet spot where it
at least gives some improvement for most users, without causing any
negative impact for any users.

I have a Saucy package available for testing here:
https://launchpad.net/~system76-dev/+archive/daily?field.series_filter=saucy

And the proposed branch here:
https://code.launchpad.net/~jderose/ubuntu/saucy/gnome-settings-daemon/tune-syndaemon2

ProblemType: Bug
DistroRelease: Ubuntu 13.10
Package: gnome-settings-daemon 3.6.4-0ubuntu16
ProcVersionSignature: Ubuntu 3.11.0-3.7-generic 3.11.0-rc6
Uname: Linux 3.11.0-3-generic x86_64
NonfreeKernelModules: nvidia
ApportVersion: 2.12.1-0ubuntu2
Architecture: amd64
Date: Thu Aug 22 07:35:33 2013
MarkForUpload: True
SourcePackage: gnome-settings-daemon
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: system76
     Importance: High
     Assignee: Jason Gerard DeRose (jderose)
         Status: Fix Committed

** Affects: gnome-settings-daemon (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug saucy system76 third-party-packages

** Attachment added: "screenshot.png"
   
https://bugs.launchpad.net/bugs/1215463/+attachment/3782625/+files/screenshot.png

** Branch linked: lp:~jderose/ubuntu/saucy/gnome-settings-daemon/tune-
syndaemon2

** Also affects: system76
   Importance: Undecided
       Status: New

** Tags added: system76

** Changed in: system76
       Status: New => Fix Committed

** Changed in: system76
   Importance: Undecided => High

** Changed in: system76
     Assignee: (unassigned) => Jason Gerard DeRose (jderose)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1215463

Title:
  "Disable while typing" should disable cursor movement

To manage notifications about this bug go to:
https://bugs.launchpad.net/system76/+bug/1215463/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to