Stop onboarding and satellite pickers from turning on DEC mouse reporting - #346
Merged
TheGreatAxios merged 1 commit intoAug 7, 2026
Conversation
TheGreatAxios
force-pushed
the
cl-5540-mouse-drag-select-must-work-without-a-modifier-or-a-picker
branch
from
August 7, 2026 04:37
6f9ce27 to
3d05119
Compare
createCliRenderer defaults useMouse and enableMouseMovement to true, so the onboarding provider picker and the satellite list modals (session resume, session mode) were emitting the DEC mouse-reporting sequences and stealing button-1 drags from the terminal before a session even starts, even though the main product host already disabled it. Native drag-select and copy now work with no modifier from the very first screen.
TheGreatAxios
force-pushed
the
cl-5540-mouse-drag-select-must-work-without-a-modifier-or-a-picker
branch
from
August 7, 2026 04:57
3d05119 to
c79e421
Compare
TheGreatAxios
deleted the
cl-5540-mouse-drag-select-must-work-without-a-modifier-or-a-picker
branch
August 7, 2026 06:36
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
createCliRendererdefaults, which turn DEC mouse reporting (?1000/?1002/?1003/?1006) on — stealing button-1 drags from the terminal before a session even starts, even though the main product host already disabled itVerification
bun run typecheck,bun run build, andbun testall pass; the only intermittent failures are pre-existing flakymarkdown-rows.test.tscases (which sub-test fails varies by run), reproduced independently of this change and unrelated to mouse/renderer code@opentui/coreso the real (non-test-injected)createCliRendererbranch in bothrunListModalandrunProviderSetupactually runs, and asserts the call was made withuseMouse: false, enableMouseMovement: false; the mock is restored inafterAllso it cannot leak into other tests in the same processscript) from the actual built CLI's onboarding screen before and after the fix: before, the stream contained?1000h?1002h?1003h?1006h; after, none of those four sequences appear anywhere in the captured streamlist-modal.ts's ownonKeyhandles Escape/Ctrl+C/Ctrl+D, and itscreateAppShellcall wires the sharedup/down/j/koverlay navigation (shell.tsmoveOverlaySelection) withwireKeysat its default oftrue;provider-setup.tshas its own completeonKeyhandler (provider-setup.ts:1334-1378) with Ctrl+C/Ctrl+D cancel, Escape, andup/down/j/klist navigation, independent of the shell. Both surfaces are fully keyboard-operable with no mouse.Closes CL-5540