Menu

#1816 "Apply" and Save and continue editing

KeePass_2.x
closed
nobody
5
2014-01-24
2014-01-16
No

On Entry and Group dialogues (may be other object dialogues too, I haven't been using KeePass for long yet), need "Apply" button (so you'd see buttons: OK - Cancel - Apply) to store information in database while continuing editing.

Also want a database or system Option so that whenever I click 'OK' or 'Apply' in a dialogue, my whole database gets automatically saved (some people might want 'apply' to just save the object, not the whole database, but I want to 'Apply' or 'OK' to save it right through to disk)

This ensures that critical data, such as a new password that I've just entered into a web form, can be saved securely to disk in KeePass, as soon as I have committed to it in the form.

I want committing the data to disk to be as atomic and reliable as possible in the user interface. Having to click OK, Save, then re-open the object and find where I was up to in the tabs everytime I want to save to disk is not acceptable to my lazy brain.

Please let me know if there is already a single, atomic action available to do the above? I tried Ctrl+S to save while dialogue was opened and nothing happened.

Thank you.

Would the above help others too?

Discussion

  • Paul

    Paul - 2014-01-16

    The data entry requirements in KeePass are simple so an Apply button doesn't provide any real benefit, IMO.

    Saving the database is only possible from the main screen and is always a manual action. You can set KeePass to save on lock/close, or create a trigger to save the database automatically post edit.

    'Tools' -> 'Triggers' and create a trigger handling the event 'User interface state updated', checking the condition 'Active database has unsaved changes' and performing the action 'Save active database'. Note that this approach is relatively unintelligent, and hopefully upcoming plugins will be able to provide more sophisticated auto-save capabilities.

    cheers, Paul

     
  • LongtimeUser

    LongtimeUser - 2014-01-23

    Thank you for replying. Sorry, don't agree with your opinion on this - there are 5 tabs in the Entry dialogue, and my experience with other applications generally, and this in particular, suggest an "Apply" button would be helpful (by preventing me from losing my place), if not for you, then certainly to me, and perhaps others.

    I have set a trigger as you suggested. Setting this trigger looks like it will achieve an immediate save to disk after OK/closing the Entry.

    But making users have to work hard (such as learn how to set a trigger rather than tick an option; make user exit then re-open a dialogue every time to get something 'saved') to ensure saves happen promptly, might prove to be out-of-step with a direction that contemporary application interfaces appear to be taking.

    I've noticed applications on my PDA/phone and newer PC applications seem to be better at saving things to disk/storage straight after data elements have been entered or set, with 'undo' paths in more complex PC applications to deal with mistakes or reversals, rather than delaying saving.

    For your re-consideration?

    Thanks.

     
  • Paul

    Paul - 2014-01-23

    The developer (Dominik) has chosen to do it this way. Any other method would need to be added by a 3rd party, either by a plug-in, or by a KeePass fork.

    cheers, Paul

     
  • Dominik Reichl

    Dominik Reichl - 2014-01-24
    • status: open --> closed
     
  • Dominik Reichl

    Dominik Reichl - 2014-01-24

    'Apply' buttons unfortunately cannot be realized, because e.g. 'Apply' would trigger saving, and saving can trigger additional operations (provided by plugins, triggers, ...) and these might be assuming that the main window is the only open window (and otherwise crash). For example: if a plugin closes the database under certain conditions when a 'Save' event occurs, an 'Apply' button has the potential for data loss and unpredictable behavior (when the database is closed and the 'Edit Entry' dialog still open, the behavior is undefined, especially when triggers/plugins are involved that listen to the dialog being closed).

    Best regards,
    Dominik

     

Log in to post a comment.