UsabilityDesignPatterns/OneHandedToolKeys

From MozillaWiki
Jump to: navigation, search

OneHandedToolKeys

Let the user select a tool with single keystroke, and make sure all of these keystrokes can be hit with the hand that is not holding the mouse.

Rationale

Your system provides multiple commands that can all be applied to points on the screen or canvas. You've built a tool-palette style interface that lets the user click on a tool to pick it, then click somewhere on the screen to apply the tool.

Problem is that repeatedly moving the mouse between the palette and the canvas is very time-consuming because the user needs to aim for small, distant targets (see UsabilityDesignPatterns/FittsLaw). It feels slow and laborious. A shortcut is needed. However, you don't want the user to have to take their hand off the mouse to use the shortcuts because UsabilityDesignPatterns/KeyboardMouseSwitching is very time-consuming as well.

But if you let the user switch tools by hitting keys with their left hand (or their right hand, if they use the mouse in their left hand), they can switch very rapidly without taking their hand off of the mouse or moving the mouse away from the canvas. With practice, the user can learn to be very, very efficient.


To support both left-handed and right-handed mouse users, consider providing both left-hand-side-of-the-keyboard and right-hand-side-of-the-keyboard equivalents for the same commands.

Case Studies

Starcraft and Warcraft do a good job of putting all the unit ability hotkeys on letters you can hit with your left hand, while using your right hand to choose targets.

Teaching First-Time Users

The user has to have some way of discovering what the keys are for each tool. This is often done by displaying the shortcut letter whenever the corresponding graphical affordance is indicated.