d73078838d
For passthrough, don't write to clients attached to different sessions,
...
based on a fix from Sergei Grechanik.
2023-03-27 08:31:32 +00:00
907f58cc3c
Fix cursor position after zero width space, GitHub issue 3469.
2023-02-10 14:01:43 +00:00
8bd17bff49
Make U+FE0F VARIATION SELECTOR-16 change the width from 1 to 2. GitHub
...
issue 3409.
2022-12-16 08:19:58 +00:00
c2580cfe24
Initialize context before testing it.
2022-10-25 17:53:31 +00:00
0fc961b22e
Do not fire redraw callback if NULL.
2022-10-25 09:04:49 +00:00
42ba6c1b22
Add a third state "all" to allow-passthrough to work even in invisible
...
panes, from Sergei Grechanik in GitHub issue 3274.
2022-08-02 11:09:26 +00:00
ccc9dc3bb4
If an application gives the first parameter to OSC 52, validate and pass
...
on to outside terminal. GitHub issue 3192.
2022-06-09 09:12:55 +00:00
6a1706a62f
Check scroll-on-clear for ED also.
2022-03-17 13:39:13 +00:00
10d689e735
Add an option (scroll-on-clear) to control if tmux scrolls into history
...
on clear, from Robert Lange in GitHub issue 3121.
2022-03-17 11:35:37 +00:00
5745bd27fd
Do not allow inline styles to replace mode-style for the selected item,
...
from Alexis Hildebrandt in GitHub issue 2946.
2021-10-26 12:22:23 +00:00
ef46eb91a5
Add -s and -S to display-popup to set popup and border style, from
...
Alexis Hildebrandt in GitHub issue 2931.
2021-10-25 09:38:36 +00:00
0cca695d6e
Instead of setting the popup default colours in the draw callback, set
...
it up in popup_display and follow the same routine as panes in the draw
and init_ctx callbacks - use the palette if the option value is default.
Allows application-set fg and bg to work in panes again.
2021-10-25 09:22:17 +00:00
8a9bfd0cdd
Add -T to set a popup title, from Alexis Hildebrandt in GitHub issue 2941.
2021-10-20 09:50:40 +00:00
add20637f2
Add popup-border-lines option to set popup line style, from Alexis
...
Hildebrandt, GitHub issue 2930.
2021-10-14 13:19:01 +00:00
837ca176d1
Add popup-style and popup-border-style options, from Alexis Hildebrandt
...
in GitHub issue 2927.
2021-10-13 09:28:36 +00:00
41ababdf6c
Be more sophisticated about enabling synchronized updates when there is
...
an overlay and treat it like the active pane (use for commands which
move the cursor only). When there is an overlay also use it for all
panes and not just the active pane. GitHub issue 2826.
2021-08-17 08:44:52 +00:00
5d451551b6
Restore saved cursor position after a ZWJ rather than recalculating it.
2021-08-12 11:35:53 +00:00
7eea3d7ab8
Break the colour palette into a struct rather than just a single array
...
and use that to support the OSC palette-setting sequences in popups.
Also add a pane-colours array option to specify the defaults. GitHub
issue 2815.
2021-08-11 20:49:55 +00:00
24cd6851f6
Add basic support for zero width joiners, GitHub issues 1605 and 2784.
2021-08-06 09:34:09 +00:00
ef5602a590
Another minor fix - do not draw positions that are under the popup with
...
spaces, from Anindya Mukherjee. Also a typo fix from Linus Arver.
2021-08-06 07:32:21 +00:00
02a6b39db7
Improve logging of screen mode changes.
2021-06-10 07:43:44 +00:00
255802d8d7
Trim output overwritten by later text or clears completely rather than
...
only in a few cases. This means we can better track when a line should
wrap. GitHub issue 2537.
2021-01-29 09:48:43 +00:00
8156d9ba41
Flush pending output before entering or exiting alternate screen rather
...
than leaking it, oss-fuzz issue 29959.
2021-01-27 10:42:52 +00:00
9fcf413d87
Revert clear changes to writing as they don't work properly, better
...
change to come.
2021-01-22 11:28:33 +00:00
91d112bf12
There is no need to clear every line entirely before drawing to it, this
...
means moving the cursor and messes up wrapping. Better to just clear the
sections that aren't written over. GitHub issue 2537.
2021-01-18 10:27:54 +00:00
ed786309cc
Do not clear the wrapped flag on linefeeds if it is already set - this
...
does not appear to be what applications want. GitHub issue 2478 and 2414.
2020-12-07 09:23:57 +00:00
1326529f99
Remove some old debug logging.
2020-11-09 08:42:43 +00:00
743ab5728d
Fix show-buffer when run from inside tmux, GitHub issue 2314.
2020-07-21 05:24:33 +00:00
2aa177d102
Do not eliminate redundant clears, the code is wrong and doing it
...
correctly wouldn't be worth it. GitHub issue 2298.
2020-07-06 10:07:02 +00:00
068b92b051
The redraw callback could be fired with a NULL pane if it updates while
...
in a mode, problem reported by Martin Vahlensieck.
2020-06-18 08:41:56 +00:00
4694e9a2b6
Move the code to set up a padding cell into grid.c.
2020-06-02 20:51:46 +00:00
2a4d4bda2b
Allow UTF-8 characters of width 0 to be stored, it is useful to be able
...
to put padding cells in as width 0.
2020-06-02 20:10:23 +00:00
f336599a3a
Make padding cell a valid character.
2020-05-27 06:23:23 +00:00
35779d655d
Fix definition of padding cells so they are not extended cells.
2020-05-25 18:55:36 +00:00
ecbdcc256f
Add screen write flags instead of individual bits and fix line length
...
calculation with padding.
2020-05-16 16:22:01 +00:00
d67245c734
Add a customize mode where keys and options may be browsed and changed,
...
includes adding a brief description of each option. Bound to "C" by
default.
2020-05-16 16:02:24 +00:00
9605b080f6
Do not hoke into struct window_pane from the tty code and instead set
...
everything up in tty_ctx. Provide a way to initialize the tty_ctx from a
callback and use it to let popups draw directly through input_parse in
the same way as panes do, rather than forcing a full redraw on every
change.
2020-05-16 15:34:08 +00:00
379ca54c80
Rename and tidy some stuff in struct tty_ctx.
2020-05-16 15:27:08 +00:00
2391fe23ab
Copy mode search improvements:
...
- Add styles for the search marking styles (copy-mode-match-style and
copy-mode-current-match-style).
- Show the current match (the one with the cursor on it) in a different style.
- Copying without a selection will copy the current match if there is one.
2020-05-16 15:11:52 +00:00
445dfa8512
Move the background colour to clear with (if any) up as well as the data
...
when scrolling, redraw problem reported by sthen@.
2020-04-21 13:48:56 +00:00
4a5182e665
Always start sync for output in panes that are not the active pane.
2020-04-20 15:49:05 +00:00
2083a6ea20
Change how sync works to always send the end sequence after all output
...
is done when we are returning to the event loop (since we always move
the cursor at that point). Also a man fix from jmc.
2020-04-20 14:59:31 +00:00
100db552d1
A resize can realloc so cannot cache the value of the list pointer.
2020-04-18 17:20:25 +00:00
deffef6f13
Reset background colour on scrolled line.
2020-04-18 15:22:05 +00:00
ea5fdd5331
There is no point in keeping a bunch of different text buffers for each
...
line when writing, we only need one as big as the line width - there
can't be any more text than that since newer will overwrite older.
2020-04-18 15:12:28 +00:00
e153b928ff
Add formats for pane written/skipped bytes for debugging.
2020-04-18 07:19:28 +00:00
bbd6e899a8
There is no point allocating a new item and putting it on the list when
...
the whole line is cleared line, there is never any point in doing it
more than once. Instead store the background colour alone.
2020-04-17 15:44:58 +00:00
5f18844b32
Return to sending sync around clears.
2020-04-16 21:46:43 +00:00
d8433add47
Do not need to set up a tty context for clearing lines now.
2020-04-16 21:16:24 +00:00
d90ca7ecd6
Collect up line clears like text within the available data so we don't
...
need to flush everything.
2020-04-16 20:32:51 +00:00