I'm not sure whether this behavior should be changed (the current behavior was intended when I implemented it). Both behaviors can be useful, depending on what you're trying to achieve.
The main motivation for the search disabling option was the recycle bin: when deleting entries to the recycle bin, you usually want them to be out of your way in most operations. For example, when deleting an expired entry, you probably want the 'Show Expired Entries' command not to show the entry in the recycle bin anymore.
On the other hand, e.g. if one wants to see the total number of entries, the search disabling option should be ignored.
For now, I tend to leave the option as is.
Best regards,
Dominik
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
There are current good alternatives to the 'Show All Entries' option so the following comments are simply to add one user's perspective.
Three suggestions that might reduce the potential for user confusion:
Display additional information in the status bar and the option's current behavior would become self-explanatory. e.g.
321 total entries - 309 shown - 2 groups excluded
Change the option name to "Show All searchable Entries". This might be too long.
Show all entries, unfiltered; but visually distinguish recycle bin entries from regular and expired entries by leaving the icon but striking out the text, or by adding a colored or textured background.
Discussion
I see the logic of excluding recycle bin entries in this option. The difficulty arises from the unambiguous nature of an Option name: "Show All Entries". Users don't have the benefit of a description of actual behavior, so expectations are set by the Option name. There is also a tendency for even the most experienced user to forget about nuanced behavior. For example https://sourceforge.net/p/keepass/discussion/329221/thread/6ae17424/#d70d.
I can think of two common situations where a user wants to see all entries in a database without any filtering. In these case the option name "Show All Entries" is misleading.
To see the true total number of entries in the database.
To browse for a 'missing' entry that the user is certain exists, but that they can't find by browsing likely groups, or with quick search.
On the other hand, e.g. if one wants to see the total number of entries, the search disabling option should be ignored.
A difficulty with the advice to avoid setting the search disabling option, is that a user may have forgotten that they disabled search on some group (e.g. because it contains inactive entries that the user wants to retain) and there is no way to find the affected group except by manual inspection of each Group's properties. An excluded group count that is displayed in the status bar could aid the user's troubleshooting efforts. Even better would be to highlight the excluded groups in the group panel.
Last edit: wellread1 2014-04-21
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I agree with most of your points and have now implemented the following:
All commands to show entries (not search) now ignore the entry searching setting. Showing all entries except the ones within search-disabled groups is still possible by performing a search for an empty string.
After a search, the status bar now indicates whether groups have been skipped: the number of skipped groups and the names of the first few such groups are displayed. For example, the status bar might show "4 entries found, 1 group skipped ('Recycle Bin').".
The refinement turned out beautifully. I had not anticipated how natural it is to follow-up a 'Show All Entries' selection by an empty search that displays the subset of entries contained in search-enabled groups. I also like the search status string that lists the first few search disabled groups.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Is there a way to count the total number of entries in the current database, either natively or through a plugin?
The status bar shows the number of entries in the current group, but I couldn't find any way to get an overall count.
Last edit: Transitionality 2014-04-20
Yes, display all entries, ungrouped in the Main Window:
The status bar will now display the total entries.
Alternatively, click 'Edit' -> 'Show All Entries'.
Best regards,
Dominik
I think the 'Edit>Show All Entries' can show a subset of the total entries if 'Search entries in Groups' is disabled for some groups.
Hmm, right... :-)
Perhaps a fix is called for?
I'm not sure whether this behavior should be changed (the current behavior was intended when I implemented it). Both behaviors can be useful, depending on what you're trying to achieve.
The main motivation for the search disabling option was the recycle bin: when deleting entries to the recycle bin, you usually want them to be out of your way in most operations. For example, when deleting an expired entry, you probably want the 'Show Expired Entries' command not to show the entry in the recycle bin anymore.
On the other hand, e.g. if one wants to see the total number of entries, the search disabling option should be ignored.
For now, I tend to leave the option as is.
Best regards,
Dominik
There are current good alternatives to the 'Show All Entries' option so the following comments are simply to add one user's perspective.
Three suggestions that might reduce the potential for user confusion:
Display additional information in the status bar and the option's current behavior would become self-explanatory. e.g.
Change the option name to "Show All searchable Entries". This might be too long.
Show all entries, unfiltered; but visually distinguish recycle bin entries from regular and expired entries by leaving the icon but striking out the text, or by adding a colored or textured background.
Discussion
I see the logic of excluding recycle bin entries in this option. The difficulty arises from the unambiguous nature of an Option name: "Show All Entries". Users don't have the benefit of a description of actual behavior, so expectations are set by the Option name. There is also a tendency for even the most experienced user to forget about nuanced behavior. For example https://sourceforge.net/p/keepass/discussion/329221/thread/6ae17424/#d70d.
I can think of two common situations where a user wants to see all entries in a database without any filtering. In these case the option name "Show All Entries" is misleading.
A difficulty with the advice to avoid setting the search disabling option, is that a user may have forgotten that they disabled search on some group (e.g. because it contains inactive entries that the user wants to retain) and there is no way to find the affected group except by manual inspection of each Group's properties. An excluded group count that is displayed in the status bar could aid the user's troubleshooting efforts. Even better would be to highlight the excluded groups in the group panel.
Last edit: wellread1 2014-04-21
Oh, I was fooled by this previously :-)
I agree with most of your points and have now implemented the following:
All commands to show entries (not search) now ignore the entry searching setting. Showing all entries except the ones within search-disabled groups is still possible by performing a search for an empty string.
After a search, the status bar now indicates whether groups have been skipped: the number of skipped groups and the names of the first few such groups are displayed. For example, the status bar might show "4 entries found, 1 group skipped ('Recycle Bin').".
Here's the latest development snapshot for testing:
http://keepass.info/filepool/KeePass_140423.zip
Thanks and best regards,
Dominik
The refinement turned out beautifully. I had not anticipated how natural it is to follow-up a 'Show All Entries' selection by an empty search that displays the subset of entries contained in search-enabled groups. I also like the search status string that lists the first few search disabled groups.
If someone comes here from searching the internet, there is a new option Find>All which will show all entries in the database now.
Thanks darkdragon!