I have been a long time fan of the Logitech Revolution MX mouse. It was a comfortable mouse with a good bit of functionality. The prize feature was the weighted free-spinning scroll wheel. I could really zoom through a long post (which was much more useful before sites began spreading posts across multiple pages to scrounge for more views). I really liked the MX. However, it was a flaky piece of technology that lived fast and died young. I consumed 3 MX revolutions before I asked myself if it was worth it. It was not. Additionally, the MX requires the Logitech Control Center to drive the mouse. While the Control Center has improved over the years it still felt bloated and has had a notoriously bad time with OS upgrades.
I soon switched to a combination of a Magic Mouse and occasionally a Magic Trackpad. They are compact, light and minimal. Minimal is not what I usually look for in a mouse. I look for functionality. It is rather surprising that with a large capacitive surface the Magic Mouse comes standard with so little functionality. There are really only four options for touch interactions, as shown in the screenshot below. Kind of sparse after using an MX for 3 years.
After some research and test drives of various Mouse drivers and control panels for the Mac, I settled on BetterTouchTool.
BetterTouchTool (BTT from here forward) is donation-ware. Personally, I think it's worth at least $20 for all the additional functionality you get out of the expensive Magic Mouse and Magic Trackpad. It's a menu-bar application that adds a large number of additional gesture features to touch input devices on the Mac. For example, I have configured my Magic Mouse cmd-left and cmd-right click to trigger screen shot to clipboard and screenshot to desktop file.
There are a significant number of gesture inputs BTT recognizes and an equally impressive number of actions that can be performed. There are almost too many options for any sane person. What's more, you can set gestures and actions on a per application basis. For my uses, I could not handle too many options for gestures. I created a limited number that I memorized and now stick to. However, I can see the benefit for workflows more complex than mine and users more spry than I am.
Strangely enough BTT also includes one non-mouse related feature that i use a lot. BTT enables window snapping. This feature allows the user to drag a window to the top of the screen to fill the screen. Alternatively, the window may be dragged to either side of the screen to file that half of the screen space. When there is no more need for the window arrangement, simply dragging the window away from the edge restores the original size. It is similar to Cinch, but it's included free with BTT. Bonus.
BTT has been as stable as any software I have used. I have never observed a crash or read a console log that involved BTT. The application is updated as needed. I think this is important to emphasize. With software that controls your experience with a computing device, feature creep is not a good thing. I do not want constant updates to my pointing devices that changes them from what I have grown accustom to. I just want them to accept my input and generate my expected result. From my experience, BTT is only updated to fix bugs or improve existing features.
In addition to the great stability and timely updates, BTT can be disabled quickly and easily. That is more than can be said for the Logitech Control Center which requires an uninstall to deactivate it. This is crucial if you begin to notice serious issues with a pointing device. If your mouse stops behaving properly, how would you run an uninstaller from a control panel? If I were really worried about that, I could also set a mouse gesture to turn off or disable BTT.
BetterTouchTool simply makes touch devices better. Much better.
Note: If you like BTT, please consider a generous donation to support the developer. He has given freely of his time to make the computers we love better.