26

Generally there are two kinds of windows I make: windows with Ok/Cancel buttons, and windows with just a Close button. The implied understanding is that Ok/Cancel windows don't save anything until you press Ok, and that Close windows either don't save anything at all, or else what they save is saved the moment you activate it.

For Close windows that save things immediately, a request I often get from clients is to make the Close button say "Save" or "Save and Exit" rather than "Close". If they want it, I do it, but this forever irritates me since I have made a button that says that it does something that it doesn't do. Should I refuse to rename these buttons this way, or should I just "suck it up"?

(I've even once used a status bar to say "Saved." every time something is saved, but that still wasn't good enough. They still wanted the Close button to say "Save and Close".)

EDIT: To clarify a little, since there was some confusion, as per my comment below: the particular forms with the problem update to the DB whenever anything on the form is changed. (i.e. on LostFocus events, or CheckedChanged events, etc.) The users want to "Save" the data by pressing a button, even though the data is already saved. Even when I explain it to them they still want a button that says "Save" even when the button doesn't do any saving.

10
  • 2
    It is rather unusual to save after each Changed-event. Jan 8, 2015 at 22:54
  • 9
    It sounds like what the user really wants is the ability to not save. As @OlivierJacot-Descombes said, it is unusual to have a modal window that doesn't have option to "cancel". But if that is not an option, change the button to say "Hide" which suggests that the data is still there even when not visible. Jan 8, 2015 at 22:58
  • 2
    FYI, "OK" is not okay. Not all users will read the question or information presented to them in a dialog. Using specific action names will make it harder for a user to select an unintended action and may even encourage them to read the information presented before making a selection. More info: uxmovement.com/buttons/why-the-ok-button-is-no-longer-okay elementaryos.org/docs/human-interface-guidelines/dialogs
    – Shnatsel
    Jan 8, 2015 at 23:52
  • 3
    As an aside, the question about placebos in UI design is worth reading.
    – Matt Obee
    Jan 9, 2015 at 9:40
  • 2
    If the purpose of the for is to edit data, there should always be an option to discard changes (the cancel button). Arguably, your code should also fit the requirement - ie, save on close.
    – Gusdor
    Jan 9, 2015 at 13:06

5 Answers 5

46

If I understand you correctly, you have a window that automatically saves changes for the user as they adjust items. Currently you have a button that say "Close" on this window. Your clients are requesting you to rename this to "Save and Exit". But since the save action has already happened while they're making the changes, the button really just closes the window. So it's mislabelling it if you rename it to "Save and Exit".

In this case, it's unclear to the user when the saving is happening. If you put in a in progress save indicator (e.g. a little toast message or inline save notifications) this will make it much clearer their changes are saved right away.

Edit: Here's one way to show inline saves

mockup

download bmml source – Wireframes created with Balsamiq Mockups

As to the close button, consider renaming it to "Done" or "Finish with Changes". A lot of times, users associate "Close" with "just close the window, I'm not touching anything." This change will make it clear to users that this is the next step when they're done editing.

5
  • 1
    yeah you understand correctly. thanks, I'll have to try to think about ways of doing "inline save notifications". hopefully that would be good enough. Jan 8, 2015 at 20:42
  • 4
    but is there a cancel button?
    – njzk2
    Jan 8, 2015 at 22:19
  • @njzk2 the forms with the problem have only a "Close" button; the user wants the "Close" button to say something like "Save and Close" even when the button doesn't actually save anything (because saving was happening directly when changes were made on the form.) Jan 8, 2015 at 22:33
  • 1
    @Sahuagin Updated the answer with an example for inline notification. Hope that will work for you.
    – nightning
    Jan 8, 2015 at 22:54
  • 7
    I would have a Done button.
    – njzk2
    Jan 9, 2015 at 14:12
14

Adding a Save button to your auto-saving window would be a bad idea.

It would suggest to the user that closing the window without pushing Save would revert the changes — which would be wrong, and highly misleading.

Then remains the fact that the users are worried that their changes could be lost.

  • You should add a discreet message saying "Saved" when appropriate. The message "draft saved" when writing a question here on Stack Exchange is a nice example. When my question gets auto-saved, the message "draft saved" appears. As soon as I write again, the message disappears.
  • Are you sure that the changes always get saved ? What happens if the network is cut ? The users may have good reasons to be worried. If you place the message "Saved", the users will look for it — instead of looking for a button Save.
3

I agree with Mark Lakata. I believe your UX simply isn't meeting the client's desire.

If you are auto saving and they are still asking for a Save button, then they don't understand that it is auto saving. There are three possible solutions.

The first is continued education.. however I don't think this will be productive as they don't seem to get it as it is.

The second is to change your forms such that they do not save upon exiting the field. Honestly, I'd be more than a bit irritated at a form that saved as soon as I moved off the field. What if I took a call? What if I was just trying to change one character and accidentally changed the whole thing? What if I was just thinking as I was typing and, after having moved off the field, realized I didn't really want to make that change? Users change their mind all the time when doing entry like this.

The third option is to go ahead and change the text of the Close button to say Save AND to implement and Undo or Revert button. That way Save just means I'm done move on while Revert allows them to back track in case they screwed up.

2
  • 3
    Doing the third option while keeping auto-saving would be a bad idea. It would strongly suggest that changes are not saved until you click Save. While in fact they would be saved. Jan 9, 2015 at 10:17
  • 1
    @NicolasBarbulesco: I completely agree. I think the best way is to drop auto save completely and do things the way that the client is expecting.
    – NotMe
    Jan 9, 2015 at 18:29
1

You should rename as client asks. Believe it or not the average user on the internet are not very savvy and can get confused very easily. Anything to make the message more clear is always a good step towards better user experience.

The "Save and close" also serves as a peace of mind so the user is reassured that whatever changes were made is saved. It might also save the user time as they read Save and close, they might close the window without reading the message in depth(sounds counter productive).

2
  • I do not understand your last sentence. What message are you talking about ? Jan 9, 2015 at 10:20
  • 1
    Making a message clearer is good for user experience. Making a message clearer but wrong is bad for user experience. Jan 9, 2015 at 10:22
0

If you have only one button, choose a neutral name like Finish (as @nightning suggests). If you have two buttons Ok and Cancel, then disable the Ok button as long as no changes have been made or if the data is not complete or if you have data errors.


Sometimes I have a state indicator (an icon) showing the editing status. Possible statuses are:

  • saved or new unedited record enter image description here
  • editing existing record (i.e. unsaved record) enter image description here
  • editing new record enter image description here,
  • editing with data error enter image description here (required entries missing or format errors)

The form has no other close buttons than the standard window close button X.

Also there is a undo button (on a toolbar)

Therefore there is no need for Ok and Cancel buttons. If the user wants to save, he clicks X, otherwise he clicks , X. If there is nothing to save, the undo button is disabled. There is also a save (diskette) button the user can click if he wants to save before closing. But closing alone also saves.

enter image description here

4
  • 5
    I usually haven't seen these icons outside of an occasional database management application - if I saw them casually in an application without prior contact, I'm not sure I'd have any idea what they mean, honestly.
    – user59879
    Jan 9, 2015 at 3:27
  • 2
    Saving when user clicks the windows close button is evil.
    – Taemyr
    Jan 9, 2015 at 15:48
  • Many normal applications (not management tools) maintain data in databases. If you see the icons in action, things become automatically clearer. Additionally, the icons have Tooltips. The point is that you see whether there are pending changes and therefore the difference between "just close" and "save and close" on any button text needs not to be made. Jan 9, 2015 at 15:49
  • As a side note, I do like the aesthetics/design of your icons
    – J. Dimeo
    Jan 11, 2015 at 2:05

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.