Commit Graph

176 Commits (2155ad32f934138af62da2701e2699c23a83df49)

Author SHA1 Message Date
nick black ca0b168192
name everything 2.4.99 3 years ago
nick black da4efcf905
notcurses_input.3: document NCKEY_SIGNAL 3 years ago
nick black 9065975a3c
move synthesized events beyond unicode 3 years ago
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
3 years ago
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.
3 years ago
nick black 95f659d62b
[notcurses_input.3] update to specify CLOCK_MONOTONIC 3 years ago
nick black 97f63dc954
v2.4.8 3 years ago
nick black acb91339e4
v2.4.7 3 years ago
nick black 41764d3691
v2.4.6 3 years ago
nick black 2148bcc4f2
Revert "[nckeys] move from PUA-B to 'plane 18' #2247"
This reverts commit e83f1f5ba3.
3 years ago
nick black e83f1f5ba3
[nckeys] move from PUA-B to 'plane 18' #2247 3 years ago
nick black 7ba72c4c20
v2.4.5 3 years ago
nick black 4c81a72bab
notcurses_input.3: mention mouse events in bottom/right margins can show up #2233 3 years ago
nick black ff84058f5c
v2.4.4 3 years ago
nick black a603d265a4
v2.4.3 3 years ago
nick black 5269e4b709
v2.4.2 3 years ago
nick black 3faf8ee3fb
[input] introduce NCKEY_EOF #2185 3 years ago
nick black ea5da346f0
Add keytype indicator to notcurses-input #2182 3 years ago
nick black 99007e128c
[input] add evtype to ncinput, for press/repeat/release #2182 3 years ago
nick black 1d4c62d446
[input] implement timeouts 3 years ago
nick black 1630a1629f
merge that shit 3 years ago
nick black 3cf5a67b84
input thread #2136 3 years ago
nick black f9df8e14fc
v2.4.1 3 years ago
nick black 8aa856f20b
v2.4.0 3 years ago
nick black 25afdd8ab6 [kitty] handle level 1 of keyboard protocol #2131 3 years ago
nick black e6ce5196d3
v2.3.18 3 years ago
nick black 1915fb48a1
v2.3.17 3 years ago
nick black 5449878840
v2.3.16 3 years ago
nick black c9fbc5d7f9
v2.3.15 3 years ago
nick black 28def058ce
v2.3.14 3 years ago
nick black 9fcbf00420
v2.3.13 3 years ago
nick black 1e248e41e1
v2.3.12 3 years ago
nick black 0d289958f9
death to sigset_t #1967 3 years ago
nick black 30d71ab6b9
v2.3.11 3 years ago
nick black 3aaff6a944
v2.3.10 3 years ago
nick black 561f4eba8c
v2.3.9 3 years ago
nick black 1189891167
v2.3.8 3 years ago
nick black 8b6a30cba8
v2.3.7 3 years ago
nick black 481d539092
v2.3.6 3 years ago
nick black a14a5271ac
v2.3.5 3 years ago
nick black 160868d9e8
v2.3.4 3 years ago
nick black 4ca1036da9
v2.3.3 3 years ago
nick black 507d2c8d8e
v2.3.2 3 years ago
nick black 6969652031
add ncinput_nomod_p() 3 years ago
nick black 739c96032d
v2.3.1 3 years ago
nick black ea4c593455
v2.3.0 3 years ago
nick black dc9db79100
v2.2.11 3 years ago
nick black 2d6bdd3b5b
v2.2.10 3 years ago
nick black 923bc40516
v2.2.9 3 years ago
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.
3 years ago