fix(filters): browse with no rules works, popup under the input, no sticky headers (user report)
- Blank typed queries rode the STATIC autocomplete path for the classic six fields, where a single space similarity-matches into nothing — clicking an empty value box with no other filters said 'No matching values' in a library full of values. Blank = browse now always rides the composed engine (which trims and answers the top values); static keeps its pinned contract for real typed queries. Regression-pinned: browse with no rules lists the field's values. - The value popup now drops BELOW the input (top: 100%), not over it. - Field-menu group headers lost position:sticky — the search box alone stays pinned.
This commit is contained in:
1 parent
4c03116ec7
commit
9c006a9a2f
3 files changed
+20
-6
No files matched your search
@@ -2648,9 +2648,14 @@ func (mh *MediaHandler) handleFieldValuesSearch(c *echo.Context, userID pgtype.U
|
||||
tree = t
|
||||
}
|
||||
|
||||
// Static path: the classic six with no rule tree (unchanged
|
||||
// contract — the tag-dropdown island and deep links still ride it).
|
||||
staticSix := tree == nil
|
||||
// Static path: the classic six with a REAL typed query and no rule
|
||||
// tree (unchanged contract — the tag-dropdown island and deep links
|
||||
// still ride it). A BLANK typed query is BROWSE (the builder's
|
||||
// click-the-box top-values list): the static queries would
|
||||
// similarity-match a single space into nothing, so browse rides the
|
||||
// composed engine, which trims the query and answers the top values
|
||||
// under the rules.
|
||||
staticSix := tree == nil && strings.TrimSpace(searchQuery) != ""
|
||||
if staticSix {
|
||||
switch fieldType {
|
||||
case "author", "genre", "tags", "narrator", "series", "language":
|
||||
|
||||
Reference in new issue
Block a user