GlFilteredSearch miscellanous bugs
This is a placeholder issue for a collection of bugs found in GlFilteredSearch as part of an investigation into #1803 (closed). Eventually, this issue should be close in favour of separate issues for each bug listed before (or group of bugs).
Some of these are addressed in !3226 (closed), although some of them should be pulled out into separate MRs.
Fixed by !3362 (merged)
- A documentation bug about options[].text, which should be options[].title
- Ambiguously-typed check in isLastToken
- An unused method
- Options with falsy values are never "activated" by the suggestions list. E.g., https://gitlab.com/gitlab-org/gitlab/-/blob/2dcb4f37a26ffff6b2cebc6b1f55f1294b1b545d/ee/app/assets/javascripts/roadmap/mixins/filtered_search_mixin.js#L179-180
Fixed by !3368 (merged)
- Suggestions not being highlighted unless text is entered with the correct casing
- An input is not always rendered, so you can’t always start editing the search input by keyboard only
- The options[].title being used as the token value instead of options[].value
- Matching suggestions aren't activated? E.g., type "auth", and only the Author token suggestion is available. Why not activate it?
Fixed by !3382 (merged)
- Inconsistent quote handling
- A runtime error if you type a quoted string followed by a space
- It's possible to deselect the first/last suggestions by pressing up/down
respectively
- This is probably a feature rather than a bug, but will be changed for !3382 (merged) anyway.
- A runtime error if you choose the Author token, press up arrow to deselect the operator suggestion, then press Escape
- A runtime error when you choose a token type, then press RightArrow before
typing or choosing an operator.
- Might be partially fixed by !3382 (merged)
- Inconsistent behaviour of suggestions for a term and a segment. In a term,
typing reduces the list of visible options. For a segment, it only maybe
activates one of them. This is because suggestion display logic lives in both
Term and Segment components, and are implemented differently.
- Partially fixed by !3368 (merged)
- When
show-friendly-textis enabled, typing any key except!or=chooses the first operator, and then that key is placed in the next segment. - When arrowing up in a suggestion list, the text cursor goes to the beginning (though this is just normal text input behaviour, so arguably not a bug)
Edited by Mark Florian