nick black
37b0e416c0
get everything prepped for reliable keyboard escapes #78
2019-12-04 23:46:24 -05:00
nick black
04e067c202
Add all handled signals to ppoll() set
...
This addresses an issue where callers of notcurses_getc_blocking()
wouldn't exit on SIGINT etc. until another keystroke was received.
The exit is now immediate, and the proper exit code is propagated.
2019-12-04 23:46:24 -05:00
nick black
6f2c45a0ef
extract input layer into its own file
2019-12-04 23:46:24 -05:00
nick black
29f55049f4
input buffer
2019-12-04 23:46:24 -05:00
Nick Black
c0a1ee0f31
Spruce up slider demo, fix up uniblock demo #66 #72 ( #112 )
...
Slider demo: paint chunks in a pattern, then shuffle them up #72
Right-to-left unit tests #66
Fix up damage to uniblock demo using cup explicit cursor move #66
2019-12-04 10:00:23 -05:00
nick black
f6b422f668
widecolor demo: bottom handle with stats
2019-12-04 05:35:21 -05:00
nick black
c5db91e247
widecolor-demo: fix up summary box
2019-12-04 05:10:48 -05:00
nick black
01a03424f9
box gradients #42
2019-12-04 04:50:26 -05:00
nick black
1bb114dbdc
box unit tests: enlarge pattern #42
2019-12-04 04:50:26 -05:00
nick black
f40f8cfb15
use background in fade unit tests
2019-12-04 04:50:26 -05:00
nick black
ae711b7e75
h/vline gradient unit tests #42
2019-12-04 04:50:26 -05:00
nick black
1b714e16d8
update docs for ncplane_box() #42
2019-12-04 04:50:26 -05:00
nick black
b711eaeedd
box gradient unit tests #42
2019-12-04 04:50:26 -05:00
nick black
bdc841e46e
ncplane_box: support box mask ctlword #42
2019-12-04 04:50:26 -05:00
nick black
a55e02836b
ncplane_box: accept ctlword ( #42 )
2019-12-04 04:50:26 -05:00
nick black
eb53f420b1
handle resizes gracefully when rendering/fading #105
2019-12-04 00:13:42 -05:00
nick black
c5ecc28ca1
remove resize check from demo core #105
2019-12-04 00:13:42 -05:00
Nick Black
6f9b1e0379
Locking #82 ( #106 )
...
* remove unused simple_gcluster_p()
* detail statistics
* add byte statistics on rendering
* lock around notcurses_render() #82
* lock nc in notcurses_putc() #82
* lock ncplane_styles() and friends #82
2019-12-03 23:34:08 -05:00
nick black
82c5b96f92
remove obsolete assert from panelreels #91
2019-12-03 21:56:50 -05:00
nick black
d8e3cc9675
lol, whoops, don't render twice each call :D
2019-12-03 21:39:45 -05:00
nick black
08d4765dc4
enforce utf-8 encoding via nl_langinfo check #89
2019-12-03 20:26:54 -05:00
nick black
f0e81ea814
widecolors: make everything a bit more visible on small screens
2019-12-03 19:16:05 -05:00
Nick Black
8e8cb92c54
Improved cell API #97 ( #103 )
...
* cell/ncplane: simplify box API (#97 )
* widecolor: use new box api (#97 )
* uniblock: use new box API #97
* intro: use new box api #97
* panelreel: use new box api
* boxdemo: use new box API #97
* sliding: use new box API #97
* maxcolor: use new box api #97
* factor out notcurses_channel_prep() #97
* maxcolor: use new channel API #97
* sliding: use new channel API #97
* intro: use new channel API #97
* new output functions with no need for a cell
* add ncplane_putegc() and ncplane_putsimple(). the former takes an EGC, the latter a simple char less than 0x80. (#97 )
* cell_prime: directly load all parts of a cell with immediates
* widecolor: use new output API #97
* boxdemo: properly initialize cells
* slider: total time cap of 5 * delaydemo
* maxcolor: use new output API #97
2019-12-03 18:40:41 -05:00
nick black
e21594b4e9
ncplane_*_box_cells() -> cells_*_box() #97
2019-12-03 14:29:48 -05:00
nick black
ccbdfcd499
summarize emission/elision rates on exit
2019-12-03 14:19:46 -05:00
nick black
5554b3fccb
persist elision/emission stats, expose them in API
2019-12-03 14:08:26 -05:00
nick black
d09029f7f4
use -std=c11 not -std=gnu11
2019-12-03 13:31:04 -05:00
nick black
1ebfb2c9e3
enable -DFORTIFY_SOURCE=2 for all code
2019-12-03 13:26:49 -05:00
nick black
f83987711c
silence -Wmaybe-uninitialized through ...whitespace? :/
2019-12-03 12:26:45 -05:00
nick black
35badf8ae7
panelreel: fix some NULL dereferences
...
ncurses getbegy() and friends, as it turns out, check for
a NULL input and return -1. we've been blindly passing
NULL in a few places on the ncurses side--with its own
problems--but that rapidly led to crashes here.
2019-12-03 03:21:51 -05:00
nick black
f7437d2e68
avast, scurvy dog
2019-12-02 10:39:48 -05:00
nick black
c70bc7b2a4
slider-demo: work atop a background
2019-12-02 07:20:47 -05:00
nick black
f6b70fd839
prep for 0.4.0
2019-12-02 06:02:03 -05:00
nick black
a17ed83be8
v0.3.0
2019-12-02 05:52:53 -05:00
nick black
415e238b3d
transparent planes #10
2019-12-02 05:49:13 -05:00
nick black
2aadd096c0
lookin' good atl
2019-12-02 05:49:13 -05:00
nick black
738c590bfd
fix up outro
2019-12-02 05:48:46 -05:00
nick black
be5ce9051d
outro
2019-12-02 05:42:10 -05:00
nick black
957af8151e
view-demo: add video element
2019-12-02 03:44:11 -05:00
nick black
94e52d4acc
respect default mode in fadein #40
2019-12-02 03:44:11 -05:00
nick black
0e4080456c
fade unit tests #40
2019-12-02 03:44:11 -05:00
nick black
966239747c
add ncplane_fadein() #40
2019-12-02 03:44:11 -05:00
nick black
02b30c822e
fix cel_rgb_get[bf]b() #40
2019-12-02 03:44:11 -05:00
nick black
4426ef0574
first go at ncplane_fadeout() #40
2019-12-02 03:44:11 -05:00
nick black
055f49b5fd
sliding-demo: animate moves #72
2019-12-02 03:44:11 -05:00
nick black
570b42b78b
sliders-demo: factor out move_square() #72
2019-12-02 03:44:11 -05:00
Nick Black
9f4fa94209
Use halfblocks to double vertical resolution of media ( #98 )
...
halfblocks vertical, w00t #88
2019-12-02 01:55:25 -05:00
nick black
383895e404
notcurses-view: much more accurate timing
2019-12-02 00:25:08 -05:00
nick black
b882fe4e40
poll() on write() EAGAIN
2019-12-01 23:56:24 -05:00
nick black
1dc254396b
comment back out debugging cruft
2019-12-01 23:40:18 -05:00