- Fix critical regression: on Linux, Ctrl+C could not interrupt/clear/exit because isAction(key,'c') shadowed the isCtrl block (both resolve to k.ctrl on non-macOS). Restructured: isAction block now falls through to interrupt logic on non-macOS when no selection exists. - Remove double pbcopy: ink's copySelection() already calls setClipboard() which handles pbcopy+tmux+OSC52. The extra writeClipboardText call in useInputHandlers copySelection() was firing pbcopy a second time. - Remove allowClipboardHotkeys prop from TextInput — every caller passed isMac, and TextInput already imports isMac. Eliminated prop-drilling through appLayout, maskedPrompt, and prompts. - Remove dead code: the isCtrl copy paths (lines 277-288) were unreachable on any platform after the isAction block changes. - Simplify textInput Cmd+C: use writeClipboardText directly without the redundant OSC52 fallback (this path is macOS-only where pbcopy works). |
||
|---|---|---|
| .. | ||
| appChrome.tsx | ||
| appLayout.tsx | ||
| appOverlays.tsx | ||
| branding.tsx | ||
| markdown.tsx | ||
| maskedPrompt.tsx | ||
| messageLine.tsx | ||
| modelPicker.tsx | ||
| prompts.tsx | ||
| queuedMessages.tsx | ||
| sessionPicker.tsx | ||
| skillsHub.tsx | ||
| textInput.tsx | ||
| themed.tsx | ||
| thinking.tsx | ||