diff options
| author | divens <divens@users.noreply.github.com> | 2026-07-07 14:41:44 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-07-07 14:41:44 +0200 |
| commit | 39a75c54934617ef9d38fe02bfab777291e39d7e (patch) | |
| tree | fa784ed52e78a6c29db27d2318a5baf9b097d2ad /CHANGELOG.md | |
| parent | UI tweaks (#5337) (diff) | |
| download | sl0ppij-39a75c54934617ef9d38fe02bfab777291e39d7e.tar.gz sl0ppij-39a75c54934617ef9d38fe02bfab777291e39d7e.tar.xz sl0ppij-39a75c54934617ef9d38fe02bfab777291e39d7e.zip | |
fix(windows): route Windows Terminal through the VT input path (#5335)
Windows Terminal does not set TERM by default, so zellij on WT was
using the native-console crossterm path that reads INPUT_RECORDs.
That path can't observe bracketed-paste sequences (`\e[200~/\e[201~`),
which is one of the reasons multi-line paste has never worked
correctly on Windows (issue #4885).
WT sets `WT_SESSION` per-process. Use that as a second trigger for
the VT input path so default WT installs get raw VT byte input (and
with it, termwiz's bracketed-paste detection, the SGR mouse format,
correct emoji delivery, etc.) without requiring the user to set TERM.
Introduce `use_vt_path()` in `os_input_output_windows.rs` as the
single source of truth for the gate. Previously the stdin handler
had one TERM check and `enable_mouse_support` / `disable_mouse_support`
each had their own — so adding `WT_SESSION` to just the stdin gate
caused mouse setup to take the native-console branch, which calls
`crossterm::event::EnableMouseCapture` and clobbers the
`ENABLE_VIRTUAL_TERMINAL_INPUT` flag the stdin path had just set.
That broke all input from WT until the helper aligned every site.
Diffstat (limited to 'CHANGELOG.md')
| -rw-r--r-- | CHANGELOG.md | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index ca0cdb0e..2bf432ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) * fix: fragmented STDIN causing "garbage" input on slow SSH connections (https://github.com/zellij-org/zellij/pull/5320) * feat: stacked lists - new stack UI (https://github.com/zellij-org/zellij/pull/5331 and https://github.com/zellij-org/zellij/pull/5337) * fix: more verbose startup errors (https://github.com/zellij-org/zellij/pull/5334) +* fix(windows): route Windows Terminal through the VT input path (https://github.com/zellij-org/zellij/pull/5335) ## [0.44.3] - 2026-05-13 * fix(windows): bump windows-sys to 0.59 to align manifest with code, fixing source builds via `cargo install`/`cargo binstall` (https://github.com/zellij-org/zellij/pull/5139) |
