5 ms·
You still need a solution for non-destructive actions. To once again use Gmail as an example, there is a setting that allows you to "undo" sending an email. How
by kibwen 4y ago
You still need a solution for non-destructive actions. To once again use Gmail as an example, there is a setting that allows you to "undo" sending an email. However, obviously, once sent and received it cannot be undone, and on the other hand the software can't just leave it in an undoable state forever or it will never get sent at all. So you have to establish a time period during which undoing is possible. Make that time period too long, and people get annoyed that their mails are unnecessarily delayed. Make it too short, and people will fall over themselves trying to click undo before the timer runs out and might miss their window anyway.
And while email isn't too bad about this, since it's expected to be asynchronous, there are other contexts where we expect things to be immediate and not suffer an undo-delay. Here's one: broadcasting your webcam or sharing your screen on a video call. In these cases, I am happy that the software warns me ahead of time that my camera is about to be shared, rather than either 1) sharing immediately with an option to undo (oops, now all my co-workers realize that I'm butt-ass naked), or 2) sharing immediately but delaying the feed by 30 seconds to give me time to undo. It's clear in this case that an up-front warning is preferable.
- deleted 4y ago[deleted]
- akira2501 4y agoI built an interface to manage an audio router. A single misplaced click could take an entire radio or television station offline, an error that occured one to many times. So.. what I went with is a simple "hold-to-activate" button. If you clicked it without activation a few times, a little box would pop up and tell you what to do. Once you held the button down, it would display a counter, and once it reached zero, then it would take the action. We added a short cut where if you held control and alt it would bypass the counter entirely. At the same time it would add the previous system state to an undo list where you could revert that or any number of previous actions to return to a prior state. Once we implemented this errors fell off considerably, and errors impacting broadcast almost entirely disappeared and most of our users were very happy with the way it operated.
- jay_kyburz 4y agoThis click and hold feature is becoming quite popular in video games.
- terribleperson 4y agoUnfortunately, developers who don't understand why click-and-hold was implemented then implement it in their own game for no reason. Valid reasons to implement click-and-hold include destructive actions or a lack of available buttons, but I've seen developers use it for non-destructive actions while the simple press is unoccupied.
- themoonisachees 4y agoDestiny 2 is full of them, which is especially egregious on PC.
- mitchdoogle 4y agoThat's why there's a caveat "when you mean undo". If the action CAN'T be undone because of it's very nature, this advice doesn't apply.