nicm
a18d1146aa
Add missing time.h to tty.c (from Ismail Donmez), also remove some stray
...
spaces.
2024-05-14 10:11:09 +00:00
nicm
f09cde2542
Change UTF-8 combining to inspect the previous character at the cursor
...
position rather than keeping the last character from the input stream,
this is how most terminals work and fixes problems with displaying these
characters in vim. GitHub issue 3600.
2023-09-15 15:49:05 +00:00
nicm
c767d62329
Request terminal colours again on SIGWINCH but at most once every 30
...
seconds, GitHub issue 3582.
2023-09-02 20:03:10 +00:00
nicm
d209fe9b1e
Setulc only does RGB colour so add Setulc1 to do non-RGB colours, GitHub
...
issue 3627.
2023-09-02 09:17:23 +00:00
nicm
84936b832f
Use 8 for underscore colour defaults instead of 0 which is less
...
confusing, and fix writing tge default colour. GitHub issue 3627.
2023-07-13 06:03:48 +00:00
nicm
ff8882a24f
Add "us" to styles for underscore colour, GitHub issue 3589.
2023-06-26 07:17:40 +00:00
nicm
8f34504736
Tidy tparm wrapper functions to have more obvious names and check tparm
...
return value.
2023-04-25 09:31:50 +00:00
nicm
551e0c36d9
Invalidate cached tty state after changing features since they may
...
change what the terminal can do and need mouse sequences or similar to
be sent again, GitHub issue 3513.
2023-04-25 09:24:44 +00:00
nicm
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
nicm
483cc77c1c
Have tmux recognise pasted texts wrapped in bracket paste sequences,
...
rather than only forwarding them to the program inside. From Andrew
Onyshchuk in GitHub issue 3431.
2023-01-12 18:49:11 +00:00
nicm
a41a927441
Query the client terminal for foreground and background colours and if
...
OSC 10 or 11 is received but no colour has been set inside tmux, return
the colour from the first attached client (probably most people will
have all light or or all dark terminals).
2023-01-03 11:43:24 +00:00
nicm
fe475bd856
Parse primary device attributes as well as secondary and add a SIXEL
...
flag (not used yet), from Anindya Mukherjee.
2022-11-11 08:37:55 +00:00
nicm
03149bf7f6
Add a Nobr terminfo capability to tell tmux the terminal does not use
...
bright colours for bold (makes a difference to how tmux applies palette
differences). From Damien Tardy-Panis in GitHub issue 3301.
2022-08-15 08:54:03 +00:00
nicm
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
nicm
d0d2c39dec
Support hyperlinks with capture-pane -e and add a mouse_hyperlink
...
format, GitHub issue 3247 from Jeff Chiang.
2022-07-06 07:36:36 +00:00
nicm
cdacc12ce3
Add support for OSC 8 hyperlinks (a VTE extension now supported by other
...
terminals such as iTerm2). Originally written by me then extended and
completed by first Will Noble and later Jeff Chiang. GitHub issues 911,
2621, 2890, 3240.
2022-06-30 09:55:53 +00:00
nicm
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
nicm
3edda3c5e7
Do not unintentionally turn off all mouse mode when button is also present.
2022-06-03 08:09:16 +00:00
nicm
792d13af49
Add a capability for OSC 7 and use it similarly to how the title is set
...
(and controlled by the same set-titles option). GitHub issue 3127.
2022-03-24 09:05:57 +00:00
nicm
ad9b805983
Add argument to refresh-client -l to forward clipboard to a pane. GitHub
...
issue 3068.
2022-03-08 12:01:19 +00:00
nicm
f85208602d
Do not create a buffer from an OSC 52 response if we have not sent a
...
query.
2022-02-15 13:03:02 +00:00
nicm
e6e3c75ed7
Try to turn on less-capable mouse modes when turning on more-capable, to
...
increase the chances we get something even if the terminal doesn't support
the one we really want. GitHub issue 3020.
2021-12-31 11:35:49 +00:00
nicm
db3aabcc34
Add a NOBLOCK flag rather than adding amount to wait for when
...
dealing with potentially-long sequences. GitHub issue 3001.
2021-12-10 12:42:37 +00:00
nicm
8fccbbb026
Do not dereference NULL window when resizing client, GitHub issue 2982.
2021-12-06 10:08:42 +00:00
nicm
333cf6429a
Bump response timer to three seconds, GitHub issue 2984.
2021-11-29 11:05:28 +00:00
nicm
57100376cc
Add a cursor-style option, from Alexis Hildebrandt in GitHub issue 2960.
2021-11-03 13:37:17 +00:00
nicm
8d2286b769
Add a cursor-colour option, from Alexis Hildebrandt in GitHub issue
...
2959.
2021-11-01 09:34:49 +00:00
nicm
4acad43013
Do not force the cursor to move if it is in the automargin space at EOL
...
and that is where we want it to be, GitHub issue 2956.
2021-10-28 18:57:06 +00:00
nicm
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
nicm
d0ab1a837a
When checking ranges in tty_cmd_cells, cannot use the tty cursor
...
position and tty_cursor because it may be at the final invisible cursor
position on automargin terminals. The text to be drawn is confined to
the pane, so use the pane cursor position for the checks instead. Fix
from Anindya Mukherjee, redraw problem reported by naddy@.
2021-10-14 09:54:51 +00:00
nicm
b8581ec80e
Make positions hidden by overlays range-based rather than character-based,
...
from Anindya Mukherjee.
2021-10-11 13:27:50 +00:00
nicm
5359b76619
Do not reset cursor to default if it has never been changed, fixes
...
problem reported by naddy.
2021-10-06 10:33:12 +00:00
nicm
9b1fdb291e
Separate "very visible" flag from blinking flag, it should not affect
...
DECSCUSR. GitHub issue 2891.
2021-10-05 12:46:02 +00:00
nicm
de9697b456
calloc for confirm-before data since the item needs to start NULL.
2021-08-17 11:20:13 +00:00
nicm
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
nicm
7789639b5d
Add a menu when a popup is present (mouse only for now).
2021-08-13 18:54:54 +00:00
nicm
9b00472820
Evaluate styles with the pane variables.
2021-08-12 19:47:05 +00:00
nicm
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
nicm
f6755c6f2c
OSC 52 can be long enough to make tmux think the output buffer is too
...
big, so treat it as a redraw. GitHub issue 2814.
2021-08-11 07:51:31 +00:00
nicm
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
nicm
950d3c5bbc
Tweak previous not to replace complete characters with spaces.
2021-08-06 03:29:15 +00:00
nicm
97b5962ab1
Correctly draw wide characters that are partially obscured.
2021-08-06 03:13:05 +00:00
nicm
93cc8df692
Do not freeze output in panes when a popup is open, let them continue to
...
redraw. From Anindya Mukherjee .
2021-08-05 09:43:51 +00:00
nicm
a35c897f0f
Do not clear region based on current cursor position, this is not
...
necessary anymore and causes problems, GitHub issue 2735.
2021-06-10 07:59:31 +00:00
nicm
02a6b39db7
Improve logging of screen mode changes.
2021-06-10 07:43:44 +00:00
nicm
f9f97c8145
Change cursor style handling so tmux understands which sequences contain
...
blinking and sets the flag appropriately, means that it works whether
cnorm disables blinking or not. GitHub issue 2682.
2021-06-10 07:36:47 +00:00
nicm
e8224fb0d1
Fix so tmux correctly sends the cvvis (cursor very visible) capability
...
rather than sending it and then immediately undoing it with cnorm. Also
turn it off when the cursor shape is changed like xterm.
2021-03-12 08:39:17 +00:00
nicm
af3ffa9c41
Move the call to setupterm() into the client and have it pass the
...
results to the server over imsg, means the server does not need to enter
ncurses or read terminfo db. Old clients will not work with a new
server.
2021-02-17 07:18:36 +00:00
nicm
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
nicm
fd451aa796
Redraw any visible modes when status line changes so that formats like
...
the pane title are updated. GitHub issue 2487. Also a man page fix from
jmc.
2020-12-03 07:12:11 +00:00