Custom three and four finger swipes
Version 1.11 of the Multitouch app is now available! This release includes three and four finger swipe gestures in each direction.
I was reluctant to add these gestures in to Multitouch, but I’ve had a lot of people ask for them and I can definitely see the benefit of being able to customize them. It definitely feels natural to close windows or browser tabs with a three or four finger down swipe.
There were a number of reasons why I was originally against adding these gestures, and they all boil down to this: the built in macOS gestures are just so good, and there’s no way to make 3rd party gestures that good when you don’t have access to everything that Apple does. Also, I’ve gotten so used to using three fingers to swipe up and down for Mission Control and App Exposé, that I honestly don’t like it any other way.
There’s a few kind of glaring issues that are noticeable from any 3rd party implementation of these gestures that I’ve seen (including mine on Multitouch), and those are:
- Triggered actions are singular, not smoothly analog like Apple’s Mission Control / App Exposé.
- When Apple’s default gestures are disabled, the 3rd party gestures can’t elegantly prevent scrolling from happening.
- The 3rd party app cannot disable macOS gestures programmatically, but it can check and see if those gestures are enabled. It’s up to the user to disable them.
That first issue is something that I could build analog actions for, similar to the two finger scroll from the left side of the trackpad that’s included in the Multitouch app. The singular actions are often what users want to execute from these gestures, though. I don’t have any plans to build analog actions unless I think of something really good and useful that can be done as a 3rd party developer. The analog implementation would also be a great deal more complicated and difficult than the singular firing of an event from a swipe.
The scrolling issue is kind of another beast. I looked at attacking this problem from many different angles, and at the end of the day it was better left where the scrolling still happened. I can prevent scroll events from going farther down the event stream, but momentum scroll makes for some really janky behavior that can’t be avoided. It’s not possible to prevent gesture events from going down the event stream, so leaving the default gestures enabled and trying to prevent them from happening is not a solution either. The scroll is here to stay. Fortunately, many actions don’t require scrolling prevention to feel natural.
Don’t let these issues stand in your way of trying these out, though. There’s a reason I still added these in, and it’s because they really are good gestures to customize. Default macOS settings overlap the behavior for three and four finger swipes, so it actually makes a lot of sense to be able to customize at least one set of the swipes. Check out v1.11 and let me know what you think!