Unexpected beahviour in selection of tagged images
Selection of tagged images behaves in an unexpected manner, violating the principle of least surprise.
Given a set of images within a hierarchy of tags (e.g. "USA|CA|Yosemite|foo") selecting "Yosemite" will result in displaying all images which are also tagged "foo" but not those tagged only "USA|CA|Yosemite".
Selecting "Yosemite" results in a search string of "USA|CA|Yosemite|%". Expected behaviour would be to omit the last "|" which will indeed show all images of the selected tag including all proper subtags.
collect: Better sorting of hierarchical tags
This puts the uncategorized tags first, followed by "darktable|" and
then the rest. It hides non-hierachical tags iff they are also existing
as the highest level of an hierarchical tag.
will result in the tag tree
#1 Updated by Tobias Ellinghaus 6 days ago
- Category set to Lighttable
- Assignee set to Tobias Ellinghaus
- Status changed from New to In Progress
- System changed from Ubuntu to all
- % Done changed from 0 to 50
- Target version set to 2.4.0
I tried fixing that and found some design choices that need to be discussed first (the code is ready, I just don't want to push yet).
Consider the following tags:
The things not clear are:
- Do we want "foo" in the "uncategorized" group?
- When selecting "foo|bar", do we want to see all images with "foo|bar" as well as "foo|bar|baz"?
- When selecting the toplevel "foo", do we also want to see the images with the single "foo" tag?
- Do we want to show "foobar" images when selecting the toplevel "foo"?
My changes are showing "foo" in the "uncategorized" group, are showing "foo|bar" images in 2) and showing all "foo" images in 3). In 4) the "foobar" images are not shown which would happen when just removing the '|' from the search query. Instead I removed the '%' from the search box altogether (the user can enter it of course manually) and instead made it work like folder mode.
#2 Updated by Tobias Ellinghaus 4 days ago
- Status changed from In Progress to Fixed
- % Done changed from 50 to 100
Applied in changeset darktable|71da7aaa3f17e88ac6d3876341e01d964cbe94cf.