Commit Graph

12382 Commits

Author SHA1 Message Date
Nicholas Marriott
f803c8cbba Remove test that depends on compiler. 2026-10-12 17:03:23 +01:00
Nicholas Marriott
2da1e0f30c Merge branch 'master' into 4902-image-support
# Conflicts:
#	Makefile.am
#	configure.ac
#	format.c
#	image-sixel.c
#	regress/tty-keys-replies.sh
#	resize.c
#	screen-redraw.c
#	screen-write.c
#	screen.c
#	tmux.1
#	tmux.h
#	tty-features.c
#	tty.c
2026-10-12 17:01:36 +01:00
Nicholas Marriott
58eb73a6d1 Fix DA test with images on. 2026-10-12 16:37:21 +01:00
Nicholas Marriott
30791b7376 Tests for image bits. 2026-10-12 16:36:04 +01:00
tmux update bot
e5456565f3 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Preserve pixel sizes with manual sizing.
  Add kittygraphics terminal feature.
  Add Kitty feature detection and sixel to WezTerm.
  Add image_support to replace sixel_support variable.
  Fail an integer format expression with a NaN or out-of-range value, from someone in GitHub issue 5725.
  Keep the row RM 1049 restores inside the saved grid, from someone in GitHub issue 5724.
  Ignore a resize from a client whose tty is closed, from someone in GitHub issue 5723.
  Do not use a dead pane when redrawing a menu, from someone in GitHub issue 5722.
2026-10-12 15:29:54 +00:00
nicm
89e2015fb2 Preserve pixel sizes with manual sizing. 2026-10-12 15:29:52 +00:00
nicm
b865fe844d Add kittygraphics terminal feature. 2026-10-12 15:29:52 +00:00
nicm
4d2e4e52e8 Add Kitty feature detection and sixel to WezTerm. 2026-10-12 15:29:52 +00:00
nicm
7fe3e928dd Add image_support to replace sixel_support variable. 2026-10-12 15:29:52 +00:00
nicm
4caff240c8 Fail an integer format expression with a NaN or out-of-range value, from
someone in GitHub issue 5725.
2026-10-12 15:29:52 +00:00
nicm
7a2ea39a3e Keep the row RM 1049 restores inside the saved grid, from someone in
GitHub issue 5724.
2026-10-12 15:29:52 +00:00
nicm
ddddd25d70 Ignore a resize from a client whose tty is closed, from someone in
GitHub issue 5723.
2026-10-12 15:29:52 +00:00
nicm
5bfa83d1fa Do not use a dead pane when redrawing a menu, from someone in GitHub
issue 5722.
2026-10-12 15:29:52 +00:00
Nicholas Marriott
fcb9ac2b2b Reject invalid and out of range numbers. 2026-10-12 13:49:23 +01:00
Nicholas Marriott
cafeed9d22 Merge pull request #5714 from Dhanu-dynamic/sixel-print-add-nul
Fix off-by-one buffer growth in sixel_print_add
2026-10-12 13:38:40 +01:00
Nicholas Marriott
40a1901bad Change --enable-sixel to --enable-images (the former stays as an alias). 2026-10-12 13:19:29 +01:00
tmux update bot
b973733720 Merge remote-tracking branch 'refs/remotes/tmux-openbsd/master'
* refs/remotes/tmux-openbsd/master:
  Respect the ncv capability and do not combine attributes and colours that will not work, reported by Joan Bruguera Micó in GitHub issue 5727.
  Clear implied Meta when discarding BackTab modifiers, GitHub issue 5730 from Joan Fabrégat.
  Do not treat compact padding cells as width 1, make them width 0. GitHub issue 5718 from dustgle at gmail dot com.
  Do not reuse old session group names when a new session is the same as its original session, GitHub issue 5704.
2026-10-12 11:40:06 +00:00
nicm
801703a3ac Respect the ncv capability and do not combine attributes and colours
that will not work, reported by Joan Bruguera Micó in GitHub issue 5727.
2026-10-12 11:40:05 +00:00
nicm
8ba04e721c Clear implied Meta when discarding BackTab modifiers, GitHub issue 5730
from Joan Fabrégat.
2026-10-12 11:40:05 +00:00
nicm
ef52b9e1cb Do not treat compact padding cells as width 1, make them width 0. GitHub
issue 5718 from dustgle at gmail dot com.
2026-10-12 11:40:05 +00:00
nicm
12c93f50f0 Do not reuse old session group names when a new session is the same as
its original session, GitHub issue 5704.
2026-10-12 11:40:05 +00:00
Nicholas Marriott
8f7cf1fdef Add ncv test. 2026-10-12 12:38:04 +01:00
Nicholas Marriott
b868c9aa14 Tests for 5722-5725. 2026-10-12 11:54:19 +01:00
Nicholas Marriott
12f8dddc7c Tests for 5730 from Joan Fabrégat. 2026-10-12 10:37:25 +01:00
Nicholas Marriott
634e96f8cc Tests for 5718. 2026-10-12 09:09:35 +01:00
Nicholas Marriott
e94426e02b Test for session group name. 2026-10-12 08:55:36 +01:00
Michael Grant
f988a7bc0b Match Kitty image sizing and layer order, preserve trailing backgrounds, and add regression coverage. 2026-10-10 17:51:50 +02:00
Michael Grant
7576d49578 Match Kitty image cursor movement to terminal behaviour and add regression coverage. 2026-10-10 16:23:42 +02:00
Michael Grant
6b456f4462 Added regression coverage for: Single and chunked compressed PNG uploads, missing or incorrect S values, and Kitty auto-detection from whole and fragmented XTVERSION replies. 2026-10-10 09:53:02 +02:00
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
Dhanraj E
ea6891fb8a Fix off-by-one buffer growth in sixel_print_add 2026-10-09 20:38:17 +05:30
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