fix(input): stop mouse from overriding keyboard selection in lists#52
Merged
Conversation
39cf1e4 to
b49d30a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
During keyboard navigation in list views (file browser, download file list), the mouse interfered with the keyboard selection:
mouseover/mouseenterwithout any real movement, hijacking the keyboard-selected row.Enterhandler could activate the mouse-focused row instead of the keyboard-selected one.Fix
A single input-mode flag (
mouseActive) in the global mouse manager:Hover-driven selection (the manager's
processHoverand the per-componentonmouseenterhandlers in the file/download lists) now no-ops while the mouse is inactive, so a stationary cursor can no longer hijack the keyboard selection. Also drops the redundant per-rowEnterhandler in the file browser — the list area's central confirm handler already activates the selected row (removes an Enter dual-fire on the mouse-focused row).Verification
bun run check(frontend): 0 errors, 478 files