Commit Graph

173 Commits

Author SHA1 Message Date
nick black
fe924be5ef
ABI3 changes (#2333)
Long-planned changes for API/ABI3 #1777

* remove old-style notcurses_ rendering functions
* Make notcurses_render() a static inline wrapper around
 ncpile_render(). Remove the deprecated
 notcurses_render_to_file() and ncpile_render_to_file().
* ncstrwidth() becomes static inline wrapper #1777
* remove deprecated ncvisual_subtitle()
* kill ncvisual_inflate(), long deprecated #1777
* remove deprecated palette256 wrappers #1777
* kill ncplane_new() #1777
* remove deprecated renderfp field from notcurses_options #1777
* reorder ncstats fields to match documentation #1777
* kill deprecated style functions #1777
* ncplane_move{top, bottom} become static inline #1777
** ncplane_pixelgeom -> ncplane_pixel_geom() #1777
* ncstyle functions ought return uint16_t #1777 #2200
* ncvisualplane_create: provide new pile functionality #1462
* [heuristics] GNU screen 4x never has rgb
* [BitmapSmoothMove] only WARN in test until sixel supports this #2258
* contour: enable sextants
* interp PoC: clean up ncvisual #2266
* ncselector_options: constify string arguments
* Constify strings in selector/mselector_items
 Use internal types to track items within the
 selector/mselector widgets, rather than pressing the
 user-provided item structs into double-duty. With this
 change, we can constify the strings within those
 user-provided items. Do so, also removing the internal-side
 elements. Update documentation. Closes #2267.
* constify ncmenu_item/_section strings
* constify strings in nctabbed_options
* notcurses-demo FPS graph: back to straight seconds
* remove unused wchar_from_utf8()
* nstrwidth_valid(): properly initialize bytes/width
* [ncneofetch] use GetSystemInfo on Windows
2021-11-09 00:53:30 -05:00
nick black
0f5aec510a
[mice] support for pure motion events
Deprecate notcurses_mouse_{enable, disable}. Reimplement
them for now as wrappers around notcurses_mice_enable().
New function notcurses_mice_disable() is a static inline
wrapper around notcurses_mice_enable(). The latter
function takes an unsigned bitmask of event types. We
now turn on the "all motion" tracking DECSET if
NCMICE_MOVE_EVENT is requested. Update the documentation,
and kill some obsolete lines. Add the ypx and xpx fields
to ncinput, to indicate pixel offset within a cell. Add
nckey NCKEY_MOTION for button-free motion events. Update
notcurses-input to pass NCMICE_ALL_EVENTS and decode
NCKEY_MOTION. Only emit mouse sequences when connected
to a TTY (or GPM). Closes #2320.

Request RGB XTGETTCAP.

Fix bug in error check in notcurses_render_to_buffer().

Decode multiple XTGETTCAP responses.
2021-11-05 08:32:35 -04:00
nick black
95f659d62b
[notcurses_input.3] update to specify CLOCK_MONOTONIC 2021-10-26 09:59:33 -04:00
nick black
97f63dc954
v2.4.8 2021-10-23 06:36:18 -04:00
nick black
acb91339e4
v2.4.7 2021-10-16 23:52:33 -04:00
nick black
41764d3691
v2.4.6 2021-10-16 16:01:21 -04:00
nick black
2148bcc4f2
Revert "[nckeys] move from PUA-B to 'plane 18' #2247"
This reverts commit e83f1f5ba3.
2021-10-09 11:07:26 -04:00
nick black
e83f1f5ba3
[nckeys] move from PUA-B to 'plane 18' #2247 2021-10-09 11:06:51 -04:00
nick black
7ba72c4c20
v2.4.5 2021-10-07 04:30:05 -04:00
nick black
4c81a72bab
notcurses_input.3: mention mouse events in bottom/right margins can show up #2233 2021-10-05 05:34:06 -04:00
nick black
ff84058f5c
v2.4.4 2021-10-03 00:20:52 -04:00
nick black
a603d265a4
v2.4.3 2021-09-26 12:35:50 -04:00
nick black
5269e4b709
v2.4.2 2021-09-20 08:03:12 -04:00
nick black
3faf8ee3fb
[input] introduce NCKEY_EOF #2185 2021-09-19 22:16:31 -04:00
nick black
ea5da346f0
Add keytype indicator to notcurses-input #2182 2021-09-19 21:01:40 -04:00
nick black
99007e128c
[input] add evtype to ncinput, for press/repeat/release #2182 2021-09-19 20:13:02 -04:00
nick black
1d4c62d446
[input] implement timeouts 2021-09-16 02:03:00 -04:00
nick black
1630a1629f
merge that shit 2021-09-14 03:41:46 -04:00
nick black
3cf5a67b84
input thread #2136 2021-09-14 03:34:53 -04:00
nick black
f9df8e14fc
v2.4.1 2021-09-12 22:14:19 -04:00
nick black
8aa856f20b
v2.4.0 2021-09-06 05:29:56 -04:00
nick black
25afdd8ab6 [kitty] handle level 1 of keyboard protocol #2131 2021-09-04 17:39:04 -04:00
nick black
e6ce5196d3
v2.3.18 2021-08-31 20:06:55 -04:00
nick black
1915fb48a1
v2.3.17 2021-08-22 16:08:03 -04:00
nick black
5449878840
v2.3.16 2021-08-19 22:14:45 -04:00
nick black
c9fbc5d7f9
v2.3.15 2021-08-17 19:18:05 -04:00
nick black
28def058ce
v2.3.14 2021-08-17 18:32:46 -04:00
nick black
9fcbf00420
v2.3.13 2021-08-04 23:37:22 -04:00
nick black
1e248e41e1
v2.3.12 2021-07-29 00:55:19 -04:00
nick black
0d289958f9
death to sigset_t #1967 2021-07-25 00:38:33 -04:00
nick black
30d71ab6b9
v2.3.11 2021-07-20 14:07:47 -04:00
nick black
3aaff6a944
v2.3.10 2021-07-14 22:41:59 -04:00
nick black
561f4eba8c
v2.3.9 2021-07-12 12:24:38 -04:00
nick black
1189891167
v2.3.8 2021-07-04 01:14:12 -04:00
nick black
8b6a30cba8
v2.3.7 2021-06-29 07:10:22 -04:00
nick black
481d539092
v2.3.6 2021-06-23 22:35:19 -04:00
nick black
a14a5271ac
v2.3.5 2021-06-23 13:07:42 -04:00
nick black
160868d9e8
v2.3.4 2021-06-12 17:27:28 -04:00
nick black
4ca1036da9
v2.3.3 2021-06-12 16:54:36 -04:00
nick black
507d2c8d8e
v2.3.2 2021-06-03 02:29:13 -04:00
nick black
6969652031
add ncinput_nomod_p() 2021-05-21 20:06:36 -04:00
nick black
739c96032d
v2.3.1 2021-05-18 04:03:27 -04:00
nick black
ea4c593455
v2.3.0 2021-05-09 18:54:22 -04:00
nick black
dc9db79100
v2.2.11 2021-05-08 18:25:13 -04:00
nick black
2d6bdd3b5b
v2.2.10 2021-05-05 05:18:57 -04:00
nick black
923bc40516
v2.2.9 2021-05-03 02:51:04 -04:00
nick black
d8cc3569ac
Block some signals while writing
Writing a partial escape can easily lock up a terminal. This
is especially relevant when working with bitmaps, as they're
thousands or even millions of times longer than a typical
escape. Immediately before writing, block SIGINT, SIGQUIT, and
SIGTERM in the writing thread, and unblock them upon emerging
(at which point we'll immediately see any queued signal
get delivered). Don't block signals like SIGSEGV that would
seem indicative of actual problems. For this to actually work,
all other threads must also have the signals masked; we thus
now add them to the signal mask of notcurses_getc(), rather
than deleting them. Closes #1416.
2021-04-27 16:53:44 -04:00
nick black
d5b58d9f58
v2.2.8 2021-04-18 13:24:24 -04:00
nick black
eefc4fb91f
v2.2.7 2021-04-18 12:34:41 -04:00
nick black
e017dcba89
v2.2.6 2021-04-12 05:01:58 -04:00