Commit Graph

12352 Commits

Author SHA1 Message Date
Michael Grant
fb70168520 Rename functions in image-fallback.c to be consistent with other image back-ends. 2026-10-09 23:53:40 +02:00
Michael Grant
729b7e7a13 Rebased on current master without conflicts and completed the cleanup: comments above new function in longer functions, metadata comments, aligned declarations and simpler guards, consistent braces and shorter lines. 2026-10-09 23:37:40 +02:00
Michael Grant
6826d87bdb Fix overflow-prone size check. 2026-10-09 23:10:15 +02:00
Michael Grant
5d1c25c5c9 Reject out of range SIXEL numbers and oversized decoded images. 2026-10-09 23:10:15 +02:00
Michael Grant
e29f9f7076 Do not allocate when a Kitty payload chunk decodes to no bytes. 2026-10-09 23:10:15 +02:00
Michael Grant
4b13e0c3d7 Fix off-by-one buffer growth in sixel_print_add and add regression test. 2026-10-09 23:10:15 +02:00
Michael Grant
554aedf09b Extend Kitty graphics protocol regression coverage. 2026-10-09 23:10:15 +02:00
Michael Grant
8f1efea3da Fix Kitty image deletion, placeholders and placement geometry. 2026-10-09 23:10:15 +02:00
Michael Grant
2118a927e9 Fix Kitty image cursor movement, replies and screen clearing. 2026-10-09 23:10:15 +02:00
Michael Grant
c6112a2a3a Accept independently padded base64 chunks in Kitty image transfers. 2026-10-09 23:10:15 +02:00
Michael Grant
64e71c2897 Added the Kitty XTVERSION detection case in tty-keys.c. 2026-10-09 23:10:15 +02:00
Michael Grant
3db73d7fdb Clean up image support and add regression tests 2026-10-09 23:10:15 +02:00
Michael Grant
21948cd117 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-09 23:10:15 +02:00
Michael Grant
c5969765b1 Cleanup 2026-10-09 23:10:15 +02:00
Michael Grant
a06673bd8c Fix to drop SIXEL cells that a newer image completely covers. And regression test added. 2026-10-09 23:10:15 +02:00
Michael Grant
f9cf0b9852 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-09 23:10:15 +02:00
tmux update bot
95c1c3d7c5 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Add a one line description text to each command, originally from someone in GitHub issue 5438.
2026-10-09 18:10:12 +00:00
nicm
f510adb754 Add a one line description text to each command, originally from someone
in GitHub issue 5438.
2026-10-09 18:10:10 +00:00
Nicholas Marriott
9c22ff6e3d Make man but more concise. 2026-10-09 13:20:15 +01:00
Nicholas Marriott
b7fd92b782 Add a utmp option if built with utempter, GitHub issue 5657 from Damian Nowak. 2026-10-09 13:18:30 +01:00
tmux update bot
10c744038f Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Clear session when freeing client, GitHub issue 5712 from Jeong, Heon.
2026-10-09 11:56:12 +00:00
nicm
c9c6a8f2ba Clear session when freeing client, GitHub issue 5712 from Jeong, Heon. 2026-10-09 11:56:11 +00:00
Nicholas Marriott
82abcd175c Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Add commands to copy mode to select, pipe and open OSC 133 command output, from Michael Grant.
  Fix bugs with empty panes and load-buffer -w, GitHub issue 5701 from Alexandre Fiori.
  Track allocations in yacc to avoid leaking when parsing commands, GitHub issue 5632 from Jeong, Heon.
  Fix commands being lost when chained with assignment, GitHub issue 5702 from Jeong, Heon
2026-10-08 16:36:34 +01:00
nicm
a0a0e12234 Add commands to copy mode to select, pipe and open OSC 133 command
output, from Michael Grant.
2026-10-08 13:32:31 +00:00
nicm
cb44afd415 Fix bugs with empty panes and load-buffer -w, GitHub issue 5701 from
Alexandre Fiori.
2026-10-08 13:32:31 +00:00
nicm
9a92292029 Track allocations in yacc to avoid leaking when parsing commands, GitHub
issue 5632 from Jeong, Heon.
2026-10-08 13:32:31 +00:00
nicm
4dc67a5dd6 Fix commands being lost when chained with assignment, GitHub issue 5702
from Jeong, Heon
2026-10-08 13:32:31 +00:00
Nicholas Marriott
48bbaa1172 Test for 5701. 2026-10-08 08:06:59 +01:00
Nicholas Marriott
ae33689815 Test for 5702. 2026-10-08 07:31:03 +01:00
tmux update bot
d217b37be9 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Add sort order flags to switch-mode, GitHub issue 5696 from harikp2002 at gmail dot com.
2026-10-07 19:52:49 +00:00
nicm
f7195bec82 Add sort order flags to switch-mode, GitHub issue 5696 from harikp2002
at gmail dot com.
2026-10-07 19:52:47 +00: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