Can Celik
cc7c696cd0
feat: add configurable pane screen and scrollback clearing ( #4383 )
2026-09-19 14:47:18 +03:00
Can Celik
028780cebc
fix: reveal selected agent when cycling the sidebar ( #4355 )
...
* fix: reveal selected agent when cycling the sidebar
* fix: reveal agent after endpoint activation
2026-09-18 21:50:26 +03:00
JJ Liebig
da6bcd5969
fix(windows): preserve mouse capture during refresh ( #4319 )
...
* fix(windows): preserve mouse capture during refresh
refs #4284
* test(windows): fix default input gauntlet invocation
* fix(windows): preserve pixel mouse transitions
refs #4284
2026-09-18 02:42:37 +02:00
b88e8116e9
test: add local windows input gauntlet ( #4298 )
...
* test: add local windows input gauntlet
refs #4251
* test: add local windows input gauntlet
Harden elevation and channel identity checks, distinguish known host limitations, and surface incomplete cleanup.
refs #4251
* test(windows): harden input gauntlet execution
refs #4251
* test(windows): make input gauntlet self-contained
refs #4251
* test(windows): bound input gauntlet failure paths
refs #4251
* test(windows): extend input qualification gauntlet
refs #4251
* test(windows): complete input qualification matrix
refs #4251
---------
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
Co-authored-by: Jonathan Liebig <jonathan.liebig@gmail.com >
2026-09-18 01:13:13 +02:00
JJ Liebig
5c61d8ec2e
fix(windows): temporarily revert VT only mode on Windows ( #4295 )
...
refs #4251
2026-09-17 15:33:04 +02:00
JJ Liebig
e7e3dfa60e
fix(windows): recover VT input without changing readers ( #4269 )
...
refs #4251
2026-09-17 03:14:57 +02:00
JJ Liebig
063e937ee9
fix(windows): restore terminal after setup errors ( #4261 )
...
refs #4251
2026-09-17 02:11:03 +02:00
JJ Liebig
20c15dd7c8
fix(windows): preserve VT input during mouse refresh ( #4257 )
...
refs #4251
2026-09-17 00:07:58 +02:00
Can Celik
5f3763dda8
fix: cache saved machine connection metadata ( #4256 )
...
refs #4252
2026-09-16 23:55:12 +03:00
Can Celik
68ae6adea0
fix: let local agent clicks cancel remote handoffs ( #4236 )
...
refs #3903
2026-09-16 15:29:45 +03:00
Can Celik
d1a53b2c0e
fix: keep local usable when remote machines stall ( #4234 )
...
refs #3903
2026-09-16 15:16:45 +03:00
Can Celik
18061191fd
fix: keep remote surface updates incremental ( #4209 )
...
refs #3769
refs #3745
2026-09-16 00:58:23 +03:00
Can Celik
ee064a0c79
fix(windows): preserve sgr mouse encoding after native capture ( #4195 )
...
refs #4155
2026-09-15 17:24:35 +03:00
akbash and akbash-bot
963f78f46c
fix: preserve live selections during pane output ( #4193 )
...
refs #3841
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-15 16:20:51 +02:00
Ogulcan Celik
9bd5f4ed37
fix: reveal newly focused workspaces in the machines sidebar
2026-09-15 15:02:09 +03:00
akbash and akbash-bot
052779c415
fix: reveal the full last tab in overflowing tab strips ( #4152 )
...
refs #4151
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-15 03:20:59 +02:00
JJ Liebig
32503f81f7
fix(windows): prefer VT input for SSH clients ( #4148 )
...
refs #3932
2026-09-15 00:15:23 +02:00
JJ Liebig
734faae72a
fix(windows): batch input trace diagnostics ( #4146 )
...
refs #3932
2026-09-14 23:21:54 +02:00
JJ Liebig
f867dabbe6
fix: reject stale pane surfaces after reconnect ( #4141 )
2026-09-14 22:31:31 +02:00
JJ Liebig
b0c05e6663
fix: map pixel mouse by integer cell pitch ( #4140 )
...
refs #3295
2026-09-14 22:21:15 +02:00
Mark Jaquith and JJ Liebig
b0f21ed2cb
feat: add cursor-based editing to text inputs ( #3698 )
...
* feat: add cursor-based editing to text inputs
refs #1803
* fix: preserve dialog actions with associated text
refs #1803
* refactor: simplify text editor outcomes and tests
refs #1803
---------
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com >
2026-09-14 21:47:53 +02:00
Can Celik
d8b36691d1
fix: avoid resending terminal cells for metadata updates ( #4137 )
2026-09-14 22:36:04 +03:00
JJ Liebig
01a9733f59
fix(windows): avoid lossy native Win32 input mode ( #4133 )
...
refs #3932
refs #3702
refs #3910
2026-09-14 22:02:44 +04:00
Can Celik
b5154541cc
fix: restore saved machine screens after reconnect ( #4126 )
...
refs #3842
2026-09-14 19:26:55 +03:00
Eric Yue
be03b7a19f
fix: preserve agent panel scroll when switching machines ( #4101 )
...
refs #3937
Root cause:
Activating another endpoint applies a snapshot with a different
endpoint-qualified graphics scope. This triggers reset_endpoint_projection,
which clears agent_scroll together with endpoint-local state even though
the agent list aggregates all machines. The selected agent receives focus,
but the list jumps back to the top.
Fix:
Save the client-owned agent scroll offset and restore it only when
activation changes endpoints. Keep same-endpoint reboot resets,
workspace/tab scroll resets, input cleanup and existing list bounds
clamping unchanged. This adds constant-time work on endpoint activation,
with no protocol, persisted-state or pane-scaled rendering changes.
Validation:
The new regression fails on the original implementation with scroll 0
instead of 6. Tests cover repeated bidirectional agent clicks, stable
visible rows, shrinking lists and same-machine reboots. All 242 client
shell tests pass.
Real SSH A/B testing against the same two disposable 0.9.0 servers
reproduces the reset with both the stable and current-master clients.
The patched client preserves the visible rows through six cross-machine
switches and two same-machine control clicks.
Native just ci passes: 3535 Rust tests, six default skips, plus lint,
maintenance, architecture and integration-asset checks. All seven docs
contract tests pass. Windows cross-lint was not run because its SDK is
not installed; native macOS and Windows UI behavior was not tested.
2026-09-14 15:46:39 +03:00
Can Celik
c77af1892f
fix: clean up idle ssh bridges and back off flapping connections ( #4083 )
...
* fix: clean up idle ssh bridges and back off flapping connections
* chore: keep ssh liveness smoke tooling local
2026-09-14 03:55:53 +03:00
Can Celik
21c1f8cf85
fix: hide only kitty image placements overlapping overlays ( #4081 )
2026-09-14 03:02:14 +03:00
JJ Liebig and dengos
247f6d1f82
fix(client): re-assert host mouse modes after a terminal reconnect ( #4079 )
...
Co-authored-by: dengos <dengoswei@gmail.com >
2026-09-14 02:42:21 +03:00
JJ Liebig
aa961df943
fix(windows): restore mouse reporting when reattaching ( #4080 )
2026-09-14 02:06:01 +03:00
3b478e69dc
fix: scope agent views to the selected machine ( #3784 )
...
* fix: scope agent views to the selected machine
refs #3732
* fix: preserve stable agent view ordering
refs #3732
---------
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com >
2026-09-14 02:11:07 +04:00
Ogulcan Celik
4e1096b101
fix: clarify agent integration settings description
2026-09-14 00:24:47 +03:00
Can Celik
f8e59221cb
feat: add ctrl-hover highlighting and fix wrapped links ( #4074 )
...
refs #1282
2026-09-13 23:05:30 +03:00
JJ Liebig
3834fd3d0f
fix: auto-expire worktree action error banners ( #4063 )
...
* fix: auto-expire worktree action error banners
refs #1827
* fix: restart endpoint error timeout on repeated errors
Route every transient client-side action error through a setter that installs a fresh deadline, so an identical repeated message cannot inherit an older, nearly-expired deadline.
refs #1827
* test: derive endpoint error expiry assertions from stored deadline
refs #1827
2026-09-13 19:14:00 +02:00
JJ Liebig
5f26879bcd
fix(ui): keep muted sidebar and tab labels readable ( #4062 )
...
refs #2692
2026-09-13 18:17:42 +02:00
JJ Liebig
cb06df6331
fix(windows): disable host mouse reporting on terminal restore ( #4055 )
...
Windows skipped the xterm mouse-reporting reset because clear_host_mouse_reporting was a no-op there. Standalone Git Bash (mintty) keeps SGR mouse reporting enabled after detach, so mouse motion leaks escape sequences into the shell. Emit the reset sequence on Windows too and include the X10 mode.
refs #3748
2026-09-13 17:43:13 +02:00
7505c08d47
fix: retain validated split mouse reports across idle gaps ( #4048 )
...
refs #3911
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com >
2026-09-13 15:33:58 +02:00
JJ Liebig
3b9f58b70e
fix: deflake windows endpoint flush drain test ( #4021 )
...
The polling peer drains at production's 2ms Windows read cadence, so a 1 MiB
frame took ~5.5s locally and exceeded the test's 10s flush deadline under CI
load. Use a 256 KiB frame, still well above the 64 KiB batch limit, and a 30s
deadline so the assertion no longer depends on CI scheduling.
2026-09-13 02:17:50 +02:00
akbash and akbash-bot
5eafc61267
fix: honor space row gaps across machines ( #3740 )
...
* fix: honor space row gaps across machines
refs #3738
* test: cover scrolling with machine space gaps
refs #3738
---------
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-13 02:20:23 +03:00
akbash and akbash-bot
96f2324467
fix: allow retrying partial worktree removal ( #3315 )
...
refs #3314
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-12 21:55:19 +02:00
akbash and akbash-bot
d184b41fa3
fix: batch queued endpoint input frames ( #4004 )
...
refs #3833
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-12 18:19:33 +02:00
JJ Liebig
c17dc3fda7
fix: keep windows endpoint writes progressing ( #3721 )
...
refs #3651
2026-09-12 18:00:01 +02:00
akbash and akbash-bot
9ad65d9031
fix: suppress Windows dead-key fallback characters in remote panes ( #3972 )
...
refs #3948
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-12 01:38:57 +04:00
Can Celik
a0474ae770
fix: preserve whole-word selection while dragging ( #3969 )
...
refs #1836
2026-09-11 22:58:01 +03:00
JJ Liebig
c7a7cc454a
fix: lint all targets on windows ( #3963 )
...
Native Windows lint and check only clippy-checked the herdr binary, while macOS and Linux run clippy across all targets. Enable --all-targets on Windows and gate the Unix-only test helpers that this exposed so Windows check matches the Unix one.
2026-09-11 18:12:49 +02:00
Can Celik
cd7edeb060
fix: preserve local direct kitty graphics transport ( #3957 )
...
refs #3785
2026-09-11 16:26:52 +03:00
Can Celik
5827145940
feat: support conditional sidebar token hiding ( #3925 )
2026-09-11 00:55:19 +03:00
Can Celik
90e947a6e2
fix: bound mouse selection repaint cadence ( #3901 )
...
refs #3895
2026-09-10 16:37:50 +03:00
Can Celik
3813af0ffe
fix: use host background for pane selection highlights ( #3894 )
...
refs #3798
2026-09-10 14:27:39 +03:00
7265a2b101
fix(windows): preserve legacy mouse reports over ssh ( #3742 )
...
* fix(windows): preserve legacy mouse reports over ssh
refs #3735
* fix(windows): preserve input after missing mouse release
refs #3735
---------
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
Co-authored-by: JJ Liebig <jonathan.liebig@gmail.com >
2026-09-10 14:02:33 +03:00
akbash and akbash-bot
e1bb3df0ac
fix: keep spaces sidebar stable during resize ( #3862 )
...
refs #3817
Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com >
2026-09-10 13:20:44 +03:00