Skip to content

Provide a visual indication for entries that contain unsaved changes [$5] #1162

@magkopian

Description

@magkopian

It would be very useful if there was a way to easily tell which entries contain unsaved changes.

Expected Behavior

The program should have a way of informing the user about which entries contain unsaved changes. This way the user has the opportunity of inspecting the particular entries, and check for any accidental changes before saving the database.

Current Behavior

There is currently no way of telling which entries have been changed since the last time the database was saved.

Possible Solution

Change the font style of the column fields of the entry to italic, or the font color to something else (e.g. red), or append an asterisk to the title field of the entry, in order to indicate that the entry contains unsaved changes, until the database is saved. And possibly, also do the same for the names of any groups that contain such entries, in order to make their discovery easier. A toolbar button for listing all the entries that contain unsaved changes, could also be a possible solution to the quick discovery of such entries.

Another possible solution for this issue, would be to use the same diff mechanism as proposed on #1152, for showing the differences between two databases before a merge. This time for showing the differences between the current state of the database with all the modifications, and the state since the last save. This has the benefit of telling the user exactly what has been changed, including which entries have been added or removed, effectively eliminating the possibility of introducing any accidental changes to the database.

Context

In the past there were several occasions, where I noticed the familiar asterisk on the title bar indicating that something has been modified, but I had absolutely no idea what that was. The result was that I was unsure whether I should save the changes or not.

Debug Info

Libraries:
KeePassXC - Version 2.2.2
Revision: 6d46717

Libraries:

  • Qt 5.7.1
  • libgcrypt 1.7.6-beta

Operating system: Debian GNU/Linux 9 (stretch)
CPU architecture: x86_64
Kernel: linux 4.9.0-4-amd64

Enabled extensions:

  • KeePassHTTP
  • Auto-Type
  • YubiKey

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    Status

    Entry Layout

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions