Separate Stop/Reload Buttons
There’s a problem with sharing one button for both stop and refresh: Reaction time.
A button that changes in response to your own actions is easy to deal with. One that changes in response to something over which you have no control can change between the time your brain tells your finger to click or tap, and the time it registers on the mouse or touchscreen.
Case in point: A web page is loading slowly. You’ve already seen the part you’re looking for, and you don’t need the rest of the images, or the rest of the 587 comments on the blog post. Maybe all you needed to do was confirm you had the right site, and you need to copy the URL. So you go to hit Stop. The web page finishes loading before your finger finishes clicking, the button changes to Reload… and the browser starts reloading the entire slow page from byte one.
I first wrote this up back in 2006 when I started using preview releases of Opera 9 and did this at least four times in the first week. (And no, I haven’t changed the example paragraph, though it was exaggerated.) At the time there was a way to add custom buttons, and a page that provided stop-only and reload-only buttons.
Since then, the fight has been lost: By 2014, stop and reload shared a single button on just about every browser. I’m sure the trend gained momentum from mobile apps, where space is at a premium, but I wish it hadn’t filtered up into the desktop UI.
On the plus side, I hardly ever make that mistake anymore. Maybe I’ve just gotten used to it. Maybe the balance between faster transfers, bigger websites and my current attention span means I’m less likely to hit stop in that narrow window when it’s a problem. Maybe I’m using ESC
instead and just haven’t noticed.
In any case, I still think it’s a bad idea, even if it’s only a minor annoyance. If you design software and want one of your buttons to pull double duty, please think about:
- Is there a good reason to combine the functions into one button?
- If so, can you tie the change to the user’s own action, so it’s not likely to change out from under them?
- And if so, make sure the button changes immediately.
Because a related problem still trips me up: when a button doesn’t respond and I can’t tell whether it didn’t register or just hasn’t responded yet. In one case I need to press it again. In the other, I need to not press it again.