fix(ui): isolate flyout and modal keyboard input - #45
Merged
Merged
Conversation
Stop keydown/keyup propagation on bulk flyout and modal panels so typing in extension fields does not reach GitHub document handlers (e.g. project search). Add regression tests and quiet INVALID_ANNOTATION rolldown warnings in the WXT build.
Contributor
There was a problem hiding this comment.
1 issue found across 5 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
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.
Summary
INVALID_ANNOTATIONwarnings without hiding other build issuesChanges
Bulk flyout (
src/ui/bulk-flyout.tsx)stopPropagationonkeydownandkeyupfor the flyout surface containerModal factory (
src/lib/modal-factory.tsx)BoxTests
src/ui/__tests__/bulk-flyout.test.tsx— assert document listeners do not receive key events from flyout inputssrc/lib/__tests__/modal-factory.test.tsx— same assertion for modal content inputsBuild (
wxt.config.ts)INVALID_ANNOTATIONrolldown warningsTest Plan
createModalif applicablepnpm typecheckpasses locallypnpm test(Vitest) passes for bulk flyout and modal factory suitesSummary by cubic
Isolates keyboard input inside the bulk flyout and modal so typing in extension fields no longer triggers GitHub Projects shortcuts. In modals, Escape keydown still propagates for close behavior.
Bug Fixes
Vitesttests to ensure document listeners don't receive key events from these inputs.Dependencies
WXT/Vite.INVALID_ANNOTATIONrolldownwarnings viaonwarnwithout hiding other issues.Written for commit b7fff99. Summary will update on new commits.