Commit Graph

12327 Commits

Author SHA1 Message Date
Michael Grant
c58ded83f5 Added the Kitty XTVERSION detection case in tty-keys.c. 2026-10-07 18:22:36 +02:00
Michael Grant
1b5061bc00 Clean up image support and add regression tests 2026-10-07 18:22:36 +02:00
Michael Grant
42e1b9e2a0 regress: rationalise image test coverage, add missing image_support guard
- Extract shared setup for the "noflash" retransmission-avoidance tests
  (image-movepane-drag-noflash.sh, image-splitwindow-resize-noflash.sh,
  image-status-pane-click-noflash.sh, image-selection-noflash.sh) into
  a new image-noflash-common.inc, matching the existing input-common.inc
  convention: dual-server cleanup/fail helpers, the shared SIXEL fixture,
  the attach-and-capture sequence, and the final DCS-retransmission
  assertion. Each test keeps its own distinct interaction and failure
  message; only the copy-pasted scaffolding moved.

- Add the missing #{image_support} runtime guard to
  image-border-status-sixel.sh, which cats a real SIXEL fixture and
  specifically guards a sixel-after-pane-creation ordering bug - without
  it, the DCS sequence is compiled out entirely on a non-image build and
  the test's assertions could pass without exercising anything.
  image-border-status-wipe.sh is deliberately left unguarded: it has no
  image/sixel content at all and guards a general border-status caching
  bug unrelated to ENABLE_IMAGES.

- Reviewed the rest of the branch's regress/image-*.sh tests in full
  (not just headers) for redundant coverage; none warranted merging -
  each guards a genuinely distinct fix via a distinct mechanism.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-07 18:22:36 +02:00
Michael Grant
45dc8ea40d Cleanup 2026-10-07 18:22:36 +02:00
Michael Grant
593f0af4cd Fix to drop SIXEL cells that a newer image completely covers. And regression test added. 2026-10-07 18:22:35 +02:00
Michael Grant
cfd1b81dc7 Implement generalised image support
Support Kitty and SIXEL input and output with grid-resident image layers, history and copy-mode integration, text fallback rendering, and damage-rectangle redraws.

Consolidate the image work through 250f96b4b onto the redraw-damage-rectangles-new base, excluding the superseded redraw implementation and its historical merges. The original history is preserved in backup/4902-image-support-before-master-rebase-20261003.
2026-10-07 18:22:35 +02:00
tmux update bot
9286115b43 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Show match count in copy mode, GitHub issue 5399.
  Add window-default-command option to override default-command per window, from Meriel Sartha Mittelbach.
  Do not change active pane if joining a pane to the same window. Reported by David le Blanc.
2026-10-07 13:58:41 +00:00
nicm
ddd0698e30 Show match count in copy mode, GitHub issue 5399. 2026-10-07 13:58:39 +00:00
nicm
d041d56bb2 Add window-default-command option to override default-command per
window, from Meriel Sartha Mittelbach.
2026-10-07 13:58:39 +00:00
nicm
e63e2df764 Do not change active pane if joining a pane to the same window. Reported
by David le Blanc.
2026-10-07 13:58:39 +00:00
Nicholas Marriott
5512949947 Test for 5696. 2026-10-07 14:14:02 +01:00
Nicholas Marriott
052c54fb49 Test for 5399. 2026-10-07 14:01:09 +01:00
Nicholas Marriott
b04055d577 Test for join-pane with modal floating pane. 2026-10-07 13:03:16 +01:00
Nicholas Marriott
6c30e1bc03 Make terminal bigger so test works on macOS. 2026-10-07 11:18:24 +01:00
Nicholas Marriott
a8158b2443 Fix test on macOS and add new test for tty. 2026-10-07 11:02:08 +01:00
Nicholas Marriott
f5c8e5acbd Fix tests. 2026-10-07 10:45:25 +01:00
tmux update bot
64ffd431de Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Fix tty_clamp_area with status lines at the top and a smaller client, GitHub issue 5697 from Yasuhiro Inami.
2026-10-07 09:35:09 +00:00
nicm
37b1631e57 Fix tty_clamp_area with status lines at the top and a smaller client,
GitHub issue 5697 from Yasuhiro Inami.
2026-10-07 09:35:07 +00:00
Nicholas Marriott
3e22d43c66 Fix tests. 2026-10-07 10:16:50 +01:00
Nicholas Marriott
2d7bca72e7 Fix tests. 2026-10-07 09:42:00 +01:00
Nicholas Marriott
7b4d4074cf Fix tests. 2026-10-07 09:08:33 +01:00
Nicholas Marriott
3b20a0418a Fix tests. 2026-10-07 08:06:16 +01:00
Nicholas Marriott
20555f1508 Fix tests. 2026-10-07 07:29:44 +01:00
Nicholas Marriott
209d389a81 Fix test again. 2026-10-07 06:46:25 +01:00
Nicholas Marriott
4775bc95e1 Fix tests on macOS. 2026-10-07 06:35:49 +01:00
Nicholas Marriott
aa52838c84 Don't use so many ptys. 2026-10-07 06:28:47 +01:00
Nicholas Marriott
da1ba778e4 Increase pty limit on macOS. 2026-10-07 06:08:35 +01:00
tmux update bot
a7a3b4b3a8 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Parse terminal replies with keys and apply them only when finished, so that a preceding Escape can be handled correctly. GitHub issue 5676 from Joan Fabrégat.
  Use the .Cm macro for keywords used as arguments to commands and options, mostly replacing dubious use of .Ic, but a few others as well; nicm@ agrees with the general direction.
2026-10-06 21:00:17 +00:00
nicm
61581458a4 Parse terminal replies with keys and apply them only when finished, so
that a preceding Escape can be handled correctly. GitHub issue 5676 from
Joan Fabrégat.
2026-10-06 21:00:15 +00:00
schwarze
198196e53e Use the .Cm macro for keywords used as arguments to commands and options,
mostly replacing dubious use of .Ic, but a few others as well;
nicm@ agrees with the general direction.
2026-10-06 21:00:15 +00:00
Nicholas Marriott
059df9643c Tests for 5675. 2026-10-06 18:50:37 +01:00
tmux update bot
81dc40dedf Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Add table for destroy-unattached.
  Do not allow drags started on status line to trigger pane key bindings, GitHub issue 5692.
2026-10-06 16:10:29 +00:00
nicm
e21f5e2d63 Add table for destroy-unattached. 2026-10-06 16:10:27 +00:00
nicm
b4f7b85e86 Do not allow drags started on status line to trigger pane key bindings,
GitHub issue 5692.
2026-10-06 16:10:27 +00:00
Nicholas Marriott
068812380f Test for drag on status line. 2026-10-06 12:28:40 +01:00
tmux update bot
0e59d2c035 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Fix redraw and selection position when changing selection mode.
2026-10-06 11:24:38 +00:00
nicm
50160131a8 Fix redraw and selection position when changing selection mode. 2026-10-06 11:24:37 +00:00
tmux update bot
f22e1d95b2 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Improve text about status lines, GitHub issue 5677.
  Redraw selections after scrolling to line boundaries, GitHub issue 5689 from bugreporter23 at gmail dot com.
2026-10-06 09:16:23 +00:00
nicm
d6237b5b87 Improve text about status lines, GitHub issue 5677. 2026-10-06 09:16:21 +00:00
nicm
a1d25b2816 Redraw selections after scrolling to line boundaries, GitHub issue 5689
from bugreporter23 at gmail dot com.
2026-10-06 09:16:21 +00:00
Nicholas Marriott
c067a0b1bf Tests for selection mode and redraw. 2026-10-06 09:26:29 +01:00
tmux update bot
d1fedcc9a0 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Fix mouse drag selection on the top and bottom lines in vi mode, GitHub issue 5667 from David Schweikert.
2026-10-05 22:02:42 +00:00
nicm
4d2494dfee Fix mouse drag selection on the top and bottom lines in vi mode, GitHub
issue 5667 from David Schweikert.
2026-10-05 22:02:40 +00:00
Nicholas Marriott
cdb8575630 Test for 5667 from David Schweikert. 2026-10-05 16:52:48 +01:00
tmux update bot
956b48ad56 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Do not always perform environment variable assignments inside %else, GitHub issue 5688 from Tushar Muralidharan.
  Check format time in format_skip1 before the loop as well.
2026-10-05 15:10:12 +00:00
nicm
f8d74ec97b Do not always perform environment variable assignments inside %else,
GitHub issue 5688 from Tushar Muralidharan.
2026-10-05 15:10:10 +00:00
nicm
38b4813f48 Check format time in format_skip1 before the loop as well. 2026-10-05 15:10:10 +00:00
Nicholas Marriott
e55c693d1a Test for 5688. 2026-10-05 14:46:14 +01:00
tmux update bot
62c6d79a80 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Use window-status-separator in second and theird status lines, GitHub issue 5672. Also match width of session name correctly.
  Fix color range check, from Vaibhav Aggarwal.
  Do not lose a pending pane resize when entering the alternate screen, from mml00 dot work at gmail dot com.
  Adjust widths of a few codepoints incorrectly set to double width, from Sidney Cammeresi.
2026-10-05 12:43:43 +00:00
nicm
bd4a63ab34 Use window-status-separator in second and theird status lines, GitHub
issue 5672. Also match width of session name correctly.
2026-10-05 12:43:38 +00:00