nicm
1a6de01210
Check the panes again if deferred redraw to make sure the flag is always
...
set. Also add a helper for the loop.
2026-06-18 08:56:07 +00:00
nicm
3485e1c089
Tidy up server_client_check_redraw. Get rid of the bitmask tracking
...
panes which want redraw for deferred clients - if they are deferred then
they can just have a full redraw instead. Also return earlier if no
redraw is actually needed, and improve the comments.
2026-06-17 13:22:48 +00:00
nicm
1ba8fa6f04
Fix shifts to 1ULL and check scrollbar even if pane is not being redrawn.
2026-06-17 12:32:54 +00:00
nicm
9ad75e1dc3
Rename the visible ranges functions since they really relate to windows
...
and put them nto a new file.
2026-06-16 10:47:35 +00:00
nicm
bdc01f44de
Fix resizing floating pane with a left scrollbar, from Michael Grant.
2026-06-16 08:57:07 +00:00
nicm
b86bd1fcd0
Add pane-border-lines none like popups (-B to new-pane).
2026-06-15 17:34:25 +00:00
nicm
bb750b07bc
If the client is blocked, defer the redraw because it may end up
...
partially discarded leading to redraw artifacts.
2026-06-15 15:05:12 +00:00
nicm
7a18fa281d
Add top-floating and bottom-floating to pane-border-status to show
...
status line only on floating panes.
2026-06-15 08:16:05 +00:00
nicm
87976aa48e
Add a helper to get pane-border-status for a window for some other
...
changes to come.
2026-06-14 19:31:37 +00:00
nicm
11b6e7844a
When MODE_SYNC is on, all terminal updates need to deferred, not just
...
scrolling. Check the flag before each one. GitHub issue 4983.
2026-06-11 19:50:23 +00:00
nicm
b6be437bab
Change send-keys -K to insert keys in the right place in the queue, like
...
we already do for key bindings. GitHub issue 3476.
2026-06-11 19:13:34 +00:00
nicm
fa6d33f742
Add a helper to free the list of pending resizes.
2026-06-11 14:19:59 +00:00
nicm
fd10db5a62
Fix mouse events on tiled pane status line - when panes share a border,
...
prefer the pane for which the border is the status line. With Dane
Jensen.
2026-06-08 23:06:21 +00:00
nicm
fe986a52d6
When entering or leaving the alternate screen, discard any pending
...
resizes. Improves flicking with scrollbars and programs that leave and
enter the alternate screen on every WINCH like nano. GitHub issue 4772.
Cvs: ----------------------------------------------------------------------
2026-06-08 20:41:21 +00:00
nicm
529afada82
Move checking of whether the cursor is visible inside the if so that it
...
always hits the calculation of the oy offset when the status line is at
the top. From Michael Grant.
2026-06-07 20:05:16 +00:00
nicm
ae6a749d3a
Move the PANE_FLOATING flag into the layout cell and add an accessor.
...
From Dane Jensen.
2026-06-02 08:13:50 +00:00
nicm
7ebeed1ae7
Do not try to use last pane if there isn't one.
2026-05-28 10:45:17 +00:00
nicm
9aa9a92f72
Pane resizing code for floating panes, mostly by Michael Grant.
2026-05-21 07:28:51 +00:00
nicm
bbea6e6375
Add a five second limit on pasting for terminals which mysteriously lose
...
the end sequence if the paste is too big (that is, Terminal.app).
Reported by Garri Djavadyan in GitHub issue 4527.
2026-05-17 13:01:04 +00:00
nicm
8f28f31b78
Do not crash if set progress bar with no pane, from Dane Jensen.
2026-05-13 08:25:05 +00:00
nicm
18fced7e7f
Make pane offsets signed, needed for floating panes.
2026-05-12 12:05:41 +00:00
nicm
3d6c542e34
Turn off the "is this a paste" guessing if the terminal supports bracket
...
pasting instead, GitHub issue 5031.
2026-05-12 10:28:09 +00:00
nicm
1d9522a7a6
Kill client rather than fatalx on bad file handling messages, reported
...
by Tim Zheng.
2026-04-23 12:36:15 +00:00
nicm
bc15723f7f
Add feature for progress bar and pass to outside terminal, GitHu issue
...
4972 from Eric Dorland.
2026-04-22 07:25:17 +00:00
nicm
cad282ebb7
Cache user from getpwuid because it can be very expensive on some
...
platforms. From Ben Maurer in GitHub issue 4973.
2026-04-04 17:13:07 +00:00
nicm
7f2ac9c871
Add remain-on-exit key to keep pane around until a key is pressed, from
...
Michael Grant.
2026-04-04 17:00:33 +00:00
nicm
6b056eb53f
Add some new mouse ranges called "control0" to "control9", will be used
...
for controls on floating panes, from Dane Jensen, with some bits from
Michael Grant.
2026-04-03 10:13:20 +00:00
nicm
7af58f74b0
Fixed missing drag end detection and mouse button detection with
...
modifiers. From Dane Jensen, reported by Joseph Tyson and Mark Kelly.
2026-04-01 08:10:02 +00:00
nicm
2ff0dd3fef
Reorganize structure of key_code so that it can be built directly by
...
bitshifts rather than a load of huge switches, from Dane Jensen in
GitHub issue 4953.
2026-03-31 11:46:43 +00:00
nicm
41bddae907
Fix incorrect condition for creating client name, from Vlad Apostol in
...
GitHub issue 4911.
2026-03-05 22:50:14 +00:00
nicm
5a33616e65
Check for no window when updating clients, GitHub issue 4851.
2026-02-10 09:00:30 +00:00
nicm
588013bb44
Refresh copy mode when style changes, from Josh Cooper in GitHub issue 4830.
2026-02-03 08:53:58 +00:00
nicm
f70150a663
Replace overlay_ranges with visible_ranges which can hold more than
...
three ranges (will be needed for floating panes); move the visible
ranges checks outside of tty_draw_line and rewrite it to fix issues with
partially-obscured wide characters. With Michael Grant.
2026-01-23 10:45:53 +00:00
nicm
26aacd0e32
Handle theme keys earlier so they are processed even if a popup is open.
...
From Josh Cooper in GitHub issue 4827.
2026-01-22 07:39:35 +00:00
nicm
8e06739e26
Fix window-size=latest not resizing on switch-client in session groups.
...
From Ilya Grigoriev in GitHub issue 4818.
2026-01-20 22:50:08 +00:00
nicm
a443531280
Remember last pane or type of location for double and triple clicks and
...
correctly handle it changes between first and second or second and
third. GitHub issue 4795 from Shaobo Song.
2026-01-12 07:48:36 +00:00
nicm
583f12ea71
Work out the default command from the queue in case it has been set from
...
the config file, GitHub issue 4791.
2026-01-07 08:16:20 +00:00
nicm
f72832cc08
Add focus-follows-mouse option, from Barry Wasdell in GitHub issue 4771.
2025-12-25 18:07:00 +00:00
nicm
9d6c69ebde
Fix y offset of mouse if status at top. GitHub issue 4738 from Michael
...
Grant.
2025-12-04 14:45:32 +00:00
nicm
04f32073c0
Add horizontal border case to server_client_check_mouse_in_pane to fix
...
mouse resizing. GitHub issue 4720 from Michael Grant, reported by
someone in GitHub issue 4715.
2025-12-01 08:04:26 +00:00
nicm
a0dfef3b04
Place cursor on correct line if message-line is not 0, reported by
...
Alexis Hildebrandt.
2025-11-26 18:57:18 +00:00
nicm
66279c124e
Make requests to the external terminal one queue instead of one by type,
...
and include any other requests as well so that ordering is maintained.
2025-11-12 20:41:06 +00:00
nicm
1e61e52400
If tmux receives a palette request (OSC 4) in a pane and the palette
...
entry has not been set, send a request to the most recently used client
and forward any response instead. Based on change from Tim Culverhouse
in GitHub issue 4665.
2025-10-30 07:41:19 +00:00
nicm
50dafd6187
Remove some unnecessary assignments.
2025-09-09 08:49:22 +00:00
nicm
cfb906a0ce
Increase the escape delay when waiting for an RGB response no matter
...
when it is triggered (they can also be sent on resize). GitHub issue
4569.
2025-09-01 07:58:09 +00:00
nicm
3520e833a4
Be more robust against misbehaving clients, prompted by deraadt based on
...
a report from sai02 at student dot ubc dot ca.
2025-08-26 07:00:22 +00:00
nicm
12452f4427
Do not double free argv from MSG_COMMAND if it is too long, reported by
...
sai02 at student dot ubc dot ca via deraadt. ok deraadt
2025-08-22 07:26:25 +00:00
nicm
1370791734
Add a nicer default second and third status line, from Michael Grant in
...
GitHub 4490.
2025-08-14 07:15:40 +00:00
nicm
aca3ffb30a
Add default-client-command to set the command used is tmux is run
...
without a command (the default stays new-session). From David Mandelberg
in GitHub issue 4422.
2025-03-24 20:01:03 +00:00
nicm
eaf70c955b
Add mode 2031 support to automatically report dark or light theme. tmux
...
will guess the theme from the background colour on terminals which do
not themselves support the escape sequence. Written by Jonathan
Slenders, GitHub issue 4353.
2025-03-04 08:45:04 +00:00