A touchpad is not a mouse, or at least not a good one

February 7, 2019

One of the things about having a pretty nice work laptop with a screen that's large enough to have more than one real window at once is that I actually use it, and I use it with multiple windows, and that means that I need to use the mouse. I like computer mice in general so I don't object to this, but like most modern laptops my Dell XPS 13 doesn't have a mouse, it has a trackpad (or touchpad, take your pick). You can use a modern touchpad as a mouse, but over my time in using the XPS 13 I've come to understand (rather viscerally) that a touchpad is not a mouse and trying to act as if it was is not a good idea. There are some things that a touchpad makes easy and natural that aren't very natural on a mouse, and a fair number of things that are natural on a mouse but don't work very well on a touchpad (at least for me; they might for people who are more experienced with touchpads).

(There is also a continuum of 'not a mouse'-ness. Physical mouse buttons made my old Thinkpad's touchpad more mouse-like than the multi-touch virtual mouse buttons do on the XPS 13.)

Things like straightforward mouse pointer tracking and left button clicks are not all that different between the two and so I can mostly treat things the same (although I think that moving more or less purely vertically or horizontally is harder on a touchpad). What is increasingly different on a touchpad is things like right or middle clicks, and moving the mouse pointer while a nominal button is 'down'. And of course there's no such thing as chorded mouse clicks on a touchpad, while at the same time a mouse has no real equivalent of multi-finger movement and swiping. The different physical locations of a laptop touchpad and a physical mouse also make a difference in what is comfortable and what isn't.

(On a touchpad, I think the more natural equivalent of moving the mouse with a button down is a single finger touchpad move with some keyboard key. Of course this changes things because now both hands are involved, but at the same time your hands aren't moving as far to reach the 'mouse'.)

For me, the things that are significantly different are moving the pointer while a mouse button is down and middle and right button clicks. For instance, with a physical mouse I'm very fond of mouse gestures in Firefox, but they're made with the right mouse button held down; as a result, I basically don't use them on my laptop touchpad. I'm also thankful that in Firefox, left clicking and middle clicking a link are equivalent if you use keyboard modifiers, because that lets me substitute an easy single finger tap for an uncertain multi-finger tap.

All of this has slowly led me to doing things differently when I'm using the laptop's touchpad, rather than trying to pretend that the touchpad is a mouse and stick to my traditional mouse habits and practices. This is a work in progress for various reasons, and on top of that I'm not sure that the X environment I have on my laptop is entirely well adopted to touchpad use.

(I know that some of my programs aren't. For one glaring example, the very convenient xterm copy and paste model is all about middle mouse clicks and being able to easily move the mouse pointer with the left button down. Selecting and copying text from one terminal window to another with the touchpad is both more awkward and more hit and miss. Probably this means I should set up some keyboard bindings for 'paste', so I can at least avoid wrangling with the multi-finger tap necessary to emulate the middle mouse.)

(On the one hand this feels pretty obvious now that I've written it down. On the other hand, it's not something that I've really thought about before now and I'm pretty sure that I'm still trying to do a certain amount of 'mouse' things with the touchpad and being frustrated by the so-so results. Hopefully UI designers have been considering this more than I have.)

Written on 07 February 2019.
« Using a single git repo to compare things between two upstreams
Making more use of keyboard control over window position and size »

Page tools: View Source, Add Comment.
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Thu Feb 7 21:35:11 2019
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.