Tag Info

Hot answers tagged

98

The site Good-UI argues for Undo: Try Undos instead of prompting for confirmation. Imagine that you just pressed an action button or link. Undos respect the initial human intent by allowing the action to happen smoothly first and foremost. Prompts on the other hand suggest to the user that he or she does not know what they are doing by questioning their ...


81

Trust me when I say this - undo/redo is one of the biggest implementation, testing and maintenance headaches in any significantly sized application. Granted, it is a wonderful thing to be able to undo/redo something as it relaxes the user and lets them test and explore their environment without worry. However, the usefulness of an undo history starts to ...


37

Delete with confirmation Delete with confirmation looks like this: Assuming the user tries to get from 1 to 3 (ie, she intended to perform action 2), the user has no interest in step 2b. We put delete-guards in place to reduce user errors, but if the action was intentional (which it is more often than not) step 2b is superfluous. Undo Undo, on the ...


30

As a counter-argument to the (well-expressed) claims already stated in other answers, confirmation dialogs should be used when an action is not performed often and difficult to reverse. A common example is installing a program on your computer: Windows machines provide this confirmation dialog any time a program requests access to your administrator ...


12

I like how Amazon handles deletion of items from a wishlist: Edit: A little explanation... Deleted items are replaced with an undo command where the item used to be, which keeps the users' context intact (unlike Google's notify bar or a global "undo" button on the other side of the screen). It is no confirmation box, modal or otherwise, to get in the ...


11

In the general case, I agree with Evil Closet Monkey: Undo creates less friction than Delete, so it is preferable. But there is at least one case where Delete+Confirm is preferable: When your users are overwhelmed. A user is overwhelmed when he wants to complete a task, but has no idea how to do it, and expects to fail. It can be so subtle that the user ...


7

Does the application have a general undo function? If no: why would you like to have an "undo selection" possibility? It does not make sense to have an undo option for a selection while at the same time you would not have an undo for things that are in fact irreversible, like for instance the actual firing of the employees itself. I admit that having to ...


7

A quick search of the Adobe site shows the reasoning for this - albeit for CS5 but I would imagine the reasoning is still the same. (emphasis mine): By default, the Photoshop History panel retains only the last 20 actions. This is a compromise, striking a balance between flexibility and performance. You can change the number of levels in the History ...


7

every once in a while I wish photoshop or word had such functionality, On the other hand like you said I often press control-z until it stops. Another issue is performance. Think a draft word document being passed around and edited for weeks. It would be huge! and take forever to load. Yet another issue is privacy. I don't want people to see what steps I ...


7

There are both technical and business drivers for this problem. Technically, undo/redo is very complex to implement for an application of any reasonble complexity. Not only does it need to handle the complexity of the app, but it requires tracking of state over time and the ability to reset that state. In some application spaces, notably graphical ...


7

I would prefer versioning like e.g. Google Docs offers. You can jump between different versions of your document and revert to any of it. In my opinion this is often a more useful approach, although it might not be reasonable for all kind of applications to keep a complete history of changes.


7

One example of such an application is IntelliJ IDEA (and some other programming environments). In addition to the usual project-specific external revision control, IDEA has a user-specific local history which saves a revision of every file on every save (the history is stored inside the user's home directory). The old revisions are stored by default for 3 ...


7

There would be a third way that i actually chose to implement in a small cms ui – and the clients seem to be happy with it so far. I also wanted to avoid the confirmation message and implementing undo just wasnt an option. So instead of adding an additional step after the user already tried to delete the content, I added a step before the user does so – so ...


6

It seems to me that you don't want undo/redo, but file versioning, or revision control. (I don't know about Photoshop, but Word has this feature, disabled by default).


6

I like the google mail behaviour. It shows an undo popup: Strike through (and a "Clear completed tasks" action) is a good (and common) solution for todo lists too.


6

You shouldn't do that. The back button is a navigation element. Check the Core App Quality Guide, and especially the Back Navigation Guide. Android users will expect the button to navigate back. If you want an undo, add an action to the action bar or provide it via a popup (http://developer.android.com/design/patterns/confirming-acknowledging.html)


5

Part of the decision is the amount of memory used per undo. In a large, complex application such as Photoshop, there is a large amount of state that is restored in an Undo operation. In a web browser such as Chrome, on the other hand, the only state required is the address, and in some cases form data; this state is maintained anyway (browser history), so ...


5

The book Design Patterns outlines how to implement undo/redo functionality (see the Command Pattern). It's a slick design, it'd be easy to test, and having unlimited undo's probably wouldn't be much of a problem. However, it comes at the cost of designing your entire system around the pattern and undo/redo looks like it might become incredibly difficult ...


5

Case 1: You do not have a timer and the notification stays till it is manually dismissed. There is nothing wrong what-so-ever with this approach. You display a message for undoing and it stays till the user has read and consciously dismissed it. Great persistent feedback and lesser chance of missing it even if you are distracted somewhere for a while. The ...


4

Because your RAM is limited :-) P.S - I know you have 8 GB of RAM today but still if you are using applications like Adobe Photoshop or perhaps 3D software, which save a lot of information if you have significant amount of changes, then this can be a huge resource hog.


4

The only think I can think of is that you don't have a delete option as the first item on the context menu. So you'd have something like this: -> Safe Option Delete Redact Obliterate This way if they'll have to move the mouse onto one of the dangerous delete options and click. While not foolproof it would reduce the chance of accidental ...


4

I would argue that it's a question of the current view. By that I mean that you should have at least 2 different views. Namely: 1) Incomplete / ToDo 2) Complete / Done Then marking a task as done merely moves it away from the Incomplete / ToDo view. So then in the complete / Done view, you simply show the item with a check mark next to it, and strike ...


4

I don't think to many undos will be a problem. If I nudge (pixel move) a selection in Photoshop, I would like to undo (and redo) in the same detailed level. If I have to push CTRL+Z (or Command+Z) 20 times - that's not a problem. So. Push to undo-stack whenever: Mouse up (from the slider). The slider might have been moved a back and forth a lot with ...


3

Whichever method you finally use, keep in mind the opposite case, i.e. when the user does really want to mark the task as completed: which of the methods would imply less confusion/annoyance to a user really wanting to mark that task as "Done"? The answer to this question is the answer to your question.


3

I have seen the following in a UI guide for a similar situation. What if you make your select all a three-state checkbox: Checked: all items are selected Unchecked: no items are selected Grey (mixed): some items are selected You can only get into the grey state by manually (de) selecting one or more items from the list. The select all checkbox is ...


3

It seems a great question for the first time, but if you think a bit you will realise the problem is with your wireframe, because 'select all' should always be on the top. I just want to point it out, if you put 'select all' to the top of the list - just like in all applications - there will be no need for the function you are asking for! Generally you ...


3

At the risk of rambling - here's a few thoughts. The first thing to decide is whether you want traditional system wide undo in a historical format or whether you want a more localized per-node undo context. It's the system wide sequential undo/redo that is the root of many problems. For example, compare editing an image (sequential/historical - ...


3

Non-global item-level undo may not only be considerably easier to implement, as Roger Attrill suggests in his answer, it may have significant usability advantages. The basic architecture is to link each node or other data object with a record of any change made to it (type of action, timestamp, user, relevant field/attribute if applicable). With this, one ...


3

I can see situations where your time based approach would work well, but there are also some problems with it (besides any technical challenges). Most people are used to the standard tree for undo, and with your changing of it, they may become confused as to why it works differently. Undoing something signifies that it was a mistake. With your time based ...


3

Pixelmator, OmniGraffle and many more (Mac) apps name the undo action after the tool that has been used: Undo Crop Undo Selection Undo Smudge Undo Paint Bucket Undo Delete But I also saw "Undo Set ...": The first option in your three examples seem to come closest to what these apps do but if you need to add details like the kind of color you can do ...



Only top voted, non community-wiki answers of a minimum length are eligible