I'm developing an application that has user based access.
Each user can change some settings for their profile (localization, timezone, the password, etc). I've chosen to perform autosave (a la Apple's settings) on each change. As soon as you click on a setting it is automatically saved. I'm pretty confident with this choice.
My question is: do you think that even a password change (with a confirmation box) can be handled that way or is better to have an explicit "change" or "save" button?
The dialog for changing the password is modal and it contains only two fields:
password: [ ]
confirm: [ ]
If the password is too short or the confirm does not match, an error message is displayed below in realtime (the check is performed on every keypress).
The dialog can be only closed with the X on the upper left corner. On close the password is changed if the two field don't produce an error, otherwise the dialog remains open.
What do you think? Any suggestion?
UPDATE: I forgot to say that if the two fields are left blank, the dialog closes without saving a new password.