Nicholas Marriott
5e32eddb8c
Fix up merge.
2026-07-01 18:00:15 +01:00
Thomas Adam
1818b6ac16
Merge branch 'obsd-master'
2026-07-01 17:52:07 +01:00
nicm
565db46a19
Instead of fully redrawing the pane when sync ends, only redraw lines
...
that have been changed.
2026-07-01 15:44:13 +00:00
Thomas Adam
002ac977f8
Merge branch 'obsd-master'
2026-07-01 09:15:07 +01:00
nicm
724f85d275
Do not draw to tty if PANE_REDRAW has been set since it is just going to
...
be replaced.
2026-07-01 07:48:48 +00:00
Thomas Adam
843adbf454
Merge branch 'obsd-master'
2026-06-30 10:30:06 +01:00
nicm
abefc3f705
Redraw when sync stops again (accidentally turned off), from Japin Li in
...
GitHub issue 5304.
2026-06-30 09:20:43 +00:00
Thomas Adam
d5284be91d
Merge branch 'obsd-master'
2026-06-29 09:00:09 +01:00
nicm
c29b41e527
Make pane scrollbars able to auto-hide after a short timeout. This
...
replaces the previous "modal" behaviour where the pane would be resized,
which tended to make a mess. Instead, the scrollbar appears when
scrolling or when hovered over with the mouse and disappears a
(configurable) short period later. From Michael Grant.
2026-06-29 07:45:09 +00:00
Thomas Adam
705fbf92ee
Merge branch 'obsd-master'
2026-06-28 21:49:05 +01:00
nicm
7383c04205
Preseve prompt flags across line clear, from Aung Myo Kyaw.
2026-06-27 10:05:38 +00:00
Thomas Adam
19d70a85fc
Merge branch 'obsd-master'
2026-06-26 09:30:07 +01:00
nicm
3631f81236
Apply better colours to various builtin bits in modes.
2026-06-26 08:10:48 +00:00
Thomas Adam
52877c9af1
Merge branch 'obsd-master'
2026-06-23 07:35:51 +01:00
nicm
95afd7549c
Rewrite screen-redraw.c to make it tidier and more maintainable. A scene
...
is generated and cached in the client: it holds positions and sizes of
panes, borders and so on. The scene is invalidated when a pane is moved
or resized or relevant option is changed. This scene is then drawn to
the client as needed and text and colours are filled in. With Michael
Grant.
2026-06-22 08:47:45 +00:00
Thomas Adam
c6b8ad6e7e
Merge branch 'obsd-master'
2026-06-18 11:15:07 +01:00
nicm
d92a479d2f
Add a dim= style attribute to dim the colours (as best as tmux is able
...
to). GitHub issue 4842.
2026-06-18 09:59:55 +00:00
Thomas Adam
1dd2589a42
Merge branch 'obsd-master'
2026-06-17 14:30:05 +01: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
Thomas Adam
6cb2233cd2
Merge branch 'obsd-master'
2026-06-16 12:55:00 +01: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
Thomas Adam
c156e597dc
Merge branch 'obsd-master'
2026-06-15 16:15:07 +01:00
nicm
0e6fe5a097
Convert cursor position back to pane coordinates for tty_cmd_cell.
2026-06-15 14:56:30 +00:00
Thomas Adam
aed9018807
Merge branch 'obsd-master'
2026-06-15 09:00:05 +01:00
nicm
97b5f22a70
When redrawing a whole pane line, fall into tty_draw_line for any
...
characters that are not plain ASCII. Fixes redraw issues with partial
tabs and other wide characters when a pane is partly outside the window.
2026-06-15 07:40:45 +00:00
Thomas Adam
42c0641daf
Merge branch 'obsd-master'
2026-06-11 21:15:06 +01: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
Thomas Adam
3d7f421809
Merge branch 'obsd-master'
2026-06-11 15:30:06 +01:00
nicm
fa6d33f742
Add a helper to free the list of pending resizes.
2026-06-11 14:19:59 +00:00
Thomas Adam
da31d94c2a
Merge branch 'obsd-master'
2026-06-10 08:50:17 +01:00
nicm
d533d7c97c
Add a context for cell/palette/hyperlinks when drawing to tty to avoid
...
passing so much in parameters.
2026-06-09 21:22:22 +00:00
Thomas Adam
7d8c1ae295
Merge branch 'obsd-master'
2026-06-08 22:00:07 +01: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
Thomas Adam
8388c53a47
Merge branch 'obsd-master'
2026-06-06 19:00:06 +01:00
nicm
3a72f3beb8
Use correct X position for visible range checks in
...
screen_write_fast_copy, GitHub issue 5164 from Barrett Ruth.
2026-06-06 17:35:30 +00:00
Thomas Adam
e89f02bd8f
Merge branch 'obsd-master'
2026-06-02 09:30:06 +01: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
Thomas Adam
7c71064b64
Merge branch 'obsd-master'
2026-06-01 12:15:06 +01:00
nicm
4d91ff8d8d
Do not try to use pane if there isn't one when redrawing wide characters,
...
GitHub issues 5145 and 5139.
2026-06-01 10:53:28 +00:00
Thomas Adam
35df67c893
Merge branch 'obsd-master'
2026-05-30 12:30:06 +01:00
nicm
f8ab7a5158
Handle ranges for panes which are outside the window to the left.
2026-05-30 11:19:39 +00:00
Thomas Adam
decaaf4b55
Merge branch 'obsd-master'
2026-05-30 11:15:06 +01:00
nicm
b9d228c72f
Do not crash when a pane offset is negative.
2026-05-30 09:48:30 +00:00
Thomas Adam
11e48c3fa9
Merge branch 'obsd-master'
2026-05-30 10:15:06 +01:00
nicm
c40302a7ff
Check if the range is invalid using start,end rather than length since
...
it will never be negative.
2026-05-30 08:58:29 +00:00
Thomas Adam
99b08ecde5
Merge branch 'obsd-master'
2026-05-29 09:15:06 +01:00
nicm
4ecf93487e
Use correct X position for redrawing wide characters.
2026-05-29 07:49:01 +00:00
Thomas Adam
887b6f4da7
Merge branch 'obsd-master'
2026-05-28 09:15:07 +01:00
nicm
9c6cfcd2e9
Obscured check should not be true if pane is same size as window.
2026-05-28 07:58:45 +00:00
Thomas Adam
658c7d1dbf
Merge branch 'obsd-master'
2026-05-28 08:45:08 +01:00