keepassxreboot / keepassxc-browser

KeePassXC Browser Extension
GNU General Public License v3.0
1.72k stars 176 forks source link

Show hierarchical group names when selecting entries #2321

Open s13ffen opened 3 weeks ago

s13ffen commented 3 weeks ago

Expected Behavior

The Plugin allows to chose entries from several open databases. Therefore it should also be able to include the information from which database an entry is coming.

When selecting several entries from the suggestions dropdown, the whole group hierarchy should be displayed to identify an entry. The browser plugin should include an option to show the whole group hierarchy when selecting entries from suggestion.

When there are several databases connected, or the group hierarchy is structured with equally named subgroups, the whole hierarchy is required to identify from which database or group hierarchy an entry is actually coming from.

My suggestion is to show the whole hierarchy starting from the Root Group. One could also argue to include the database name - but I would stick with the group hierarchy for clarity.

Maybe there could be three options for users:

Current Behavior

Currently the Browser Plugin shows only the current group name to identify different matching entries. When there are several databases connected, these group names can be identical, and it is not clear which database is used. for the following DB Structure:

DB1
|- Root1
|-- GroupA

DB2
|- Root2
|-- GroupA

When there are matching entries in GroupA in both databases, it is not possible to identify from which database the entry is actually coming. The Plugin shows only "GroupA" for both entries.

Instead, the plugin should show the complete hierarchical path of groups for the entries (my suggestion):

Or include the database name, omitting the hierarchy in between:

Or show only the database name

varjolintu commented 3 weeks ago

In which situation this list is shown? It's not clear what feature you are meaning here.

droidmonkey commented 3 weeks ago

Use a better entry title or group name. Showing the entire group structure is not feasible as the space in the popups doesn't allow

s13ffen commented 2 weeks ago

In which situation this list is shown? It's not clear what feature you are meaning here.

When the Plugin detected a field for possible autofill it shows the keypass Icon. Clicking the icon opens a popup dropdown field with possible matching password candidates. In this situation it is necessary to identify the database entry by the given information in the dropdown field. And from a UX point, this needs to be a fast and easy experience. In the situation described, it is cumbersome.

Use a better entry title or group name. Showing the entire group structure is not feasible as the space in the popups doesn't allow

I thought about this as well, but it would be a very cumbersome workaround. It would require to rename all the groups and insert the database name into the group name. This is an unnecessary double structure of information, which also makes no sense in the context of the Keypass DB alone. It would be an adaptation of the database structure, to create a workaround for the shortcomings of the browser plugin. As databases can be shared, this would have to be discussed with all shared members, to fit the database to fix UI problems of the browser plugin. I don't think this is a feasible solution. Allowing to decide what information is displayed in the dropdown, allows every user to customize the experience to their own needs.

The Plugin allows to chose entries from several open databases. Therefore it should also be able to include the information from which database an entry is coming.