Commit Graph

5184 Commits

Author SHA1 Message Date
nick black
ee638b9a96
nccell_width() return -1 on utf8_egc_len() error #1627 2021-05-08 18:05:31 -04:00
nick black
e0e747837e
kitty: must damage cells underneath a sprixel when hiding #1562 2021-05-08 17:13:59 -04:00
nick black
8f6879ab7f Fix sixel reload cached wipe display #1557
In Sixel, we must supply a value for P2; essentially, 1
means that there are transparent pixels, while 0 means
there are not, or that we don't care what's already
present (P2=0 is implemented faster by some terminals).
We set P2=1 upon encountering a transparent pixel, or
after wiping a cell, but we weren't doing so when we
reloaded a bitmap and prewiped due to cached ANNIHILATION
values in the TAM. Do so. This fixes up the flickering
we saw in the yield demo, as we no longer printed over
the text. Furthermore, we can now properly return 0 from
sixel_wipe() on a cached wipe, eliminating a great many
invalidations and redraws. Move the ANNIHILATION check
into the shared code of sprite_wipe(), removing it from
sixel_wipe() and kitty_wipe().

Oh, what a happy, happy, happy day!
2021-05-08 16:57:33 -04:00
nick black
3f908d43a2 sprixel_debug: show glyph length 2021-05-08 16:57:33 -04:00
nick black
022c6350e2 use ncplane_erase_region() in wipebitmap PoC 2021-05-08 16:57:33 -04:00
nick black
f080e1502b add ncplane_erase_region() 2021-05-08 16:57:33 -04:00
nick black
e4a1b44ffa sixel: restore bad 1 on cached wipe 2021-05-08 16:57:33 -04:00
nick black
f067f03832 wipebitmap PoC: more close-in testing 2021-05-08 16:57:33 -04:00
nick black
88936490bb further wipebitmap PoC flushwork 2021-05-08 16:57:33 -04:00
nick black
00962bb99f
add note about Requires.private to NEWS.md #1635 2021-05-08 15:39:52 -04:00
nick black
8025beb6d8
[rust] fix issue-1559 example, i think #1559 2021-05-08 15:28:31 -04:00
nick black
0d70d73100
Write Requires.private in pc files based off discovered TERMINFO_LIBRARIES #1635 2021-05-08 13:48:14 -04:00
nick black
052b9148e7
pkgconfig: move stdc++ dep from notcurses-core.pc to notcurses.pc #1635 2021-05-07 17:48:24 -04:00
nick black
84c7aca04e
add ncblit_rgb_packed(), ncblit_rgb_loose() #1634 2021-05-07 17:34:02 -04:00
nick black
3a29fb7991
sixel_wipe: fix off-by-one in bounds computations #1628 2021-05-07 05:54:04 -04:00
nick black
05f5a479c1
revert #1628 fix until crash is resolved 2021-05-07 05:20:19 -04:00
nick black
ace36638d6
[sixel] completely wipe cells when height % 6 == 1 #1628 2021-05-06 23:54:40 -04:00
nick black
1b4d346fb1
Merge branch 'master' of github.com:dankamongmen/notcurses 2021-05-06 23:52:43 -04:00
joseLuís
95fa72c3e7 [rust] update mergedown doc comment
- fix more warnings
2021-05-06 21:22:22 +02:00
nick black
2d7019c726
deal with possible endianness problems in bitmap tests #1627 2021-05-06 10:10:03 -04:00
nick black
6a2ed461df
deal with possible endianness problems in bitmap tests #1627 2021-05-06 10:09:20 -04:00
nick black
02af161b98
notcurses_stats_alloc: mark paramater as unused #1633 2021-05-06 10:04:26 -04:00
joseLuís
5ec11e5897 [rust] remove ncplane_vprintf
- remove `__va_list_tag`

The `printf` functions wont be implemented, since they require
`__va_list` which causes compatibility problems.
2021-05-06 14:44:51 +02:00
joseLuís
5f3b2f79cf [rust] fix bindgen imports
- update blacklist rules
- use ffi `__va_list_tags`
2021-05-06 14:40:12 +02:00
joseLuís
c52e9c5a47 [rust] add NCVISUAL_OPTION_CHILDPLANE
- update docs
2021-05-06 14:31:31 +02:00
joseLuís
7e7082e836 [rust] adjust bindgen imports.
- only import functions from the notcurses public API
- exclude more unneeded types from being imported.
- use custom `__va_list_tag`
2021-05-06 14:10:46 +02:00
joseLuís
66e20bdac8 [rust] safely wrap ncmetric function & fix warnings
- fix warnings on doc generation from imported C API doc-comments
- fix remaining clippy warning
2021-05-06 13:39:30 +02:00
joseLuís
81f63f0e3b [rust] fix docs 2021-05-06 13:08:21 +02:00
joseLuís
87f92546db [rust] remove raw_wrap macro 2021-05-06 13:01:56 +02:00
joseLuís
aa0e242a7a [rust] bugfix & a couple of minor updates 2021-05-05 20:34:04 +02:00
joseLuís
b7bfbb0f90 [rust] fix hundreds of clippy warnings 2021-05-05 20:28:51 +02:00
joseLuís
129e208438 [rust] refactor Notcurses & NcDirect wrapping approach
- remove `Nc` & `NcD` wrappers, to move them to notcurses-rs library.
- update the summary header format for Notcurses and NcDirect
- update docs and examples
2021-05-05 19:33:00 +02:00
nick black
73fc4ea935
demo: change up the order a bit, moving zoo before outro 2021-05-05 05:47:33 -04:00
nick black
06e7391b89
release.sh: change both instances of the version in index.html 2021-05-05 05:20:27 -04:00
nick black
2d6bdd3b5b
v2.2.10 2021-05-05 05:18:57 -04:00
nick black
c61eafbbf4
[ncdirect] use '\v' for cursor down, not '\n'
With '\v' (vertical tab), we don't need force raw mode.
This saves us system calls, and makes the entire affair
more reliable (no race between setting up termios and
emitting '\n'; no chance for second tcsetattr to fail).
Thanks once more to @dnkl on #1625.
2021-05-05 05:09:48 -04:00
nick black
36a2d00fb3
ncdirect: move down with raw-mode newlines
The cud capability to move the cursor down doesn't
scroll (and shouldn't be used on the last row). We
have no reliable knowledge of whether we're on the
last row or not, so instead switch to raw mode, emit
the newlines, and switch back to whatever mode we
were in. This method is due to @dnkl aka Daniel Eklöf,
a gentleman and scholar who absolutely knows his shit.
Closes #1625.
2021-05-05 04:49:02 -04:00
nick black
96491e42df
tighten up state machine, only move to INVALIDATED from QUIESCENT #1631 2021-05-05 04:24:33 -04:00
nick black
d574dee3fe
kitty: fix mask in triplet_alpha1() #1631 2021-05-05 03:07:40 -04:00
nick black
1d06c5bd5a invalidate sprixel following rebuild #1631 2021-05-05 02:44:12 -04:00
nick black
757d12b9ad wipebitmap poc -- more tests 2021-05-05 02:44:12 -04:00
nick black
99675db255
wipebitmap PoC: test transparent cells atop bitmaps 2021-05-05 01:25:15 -04:00
nick black
d5e3624f30
[sixel] *really* correct wipe_color() assert #1630 2021-05-05 01:15:44 -04:00
nick black
e65f4f2e7c
sprite_rebuild: don't assert on missing auxvec in SPRIXCELL_ANNIHILATED_TRANS #1629 2021-05-05 01:06:52 -04:00
nick black
ad265fe530
[sixel] fix up assert to properly bound xoff #1629 2021-05-05 00:16:37 -04:00
nick black
05f5f70ee2
lift SPRIXEL_HIDE check out of spirxel_wipe() 2021-05-04 22:49:38 -04:00
nick black
e0a53be471
textplay: purge debugging cruft 2021-05-04 20:23:27 -04:00
nick black
578f8eb45c bitmaps: cap to screen size, fix bitmap childplane tests #1603 2021-05-04 19:08:55 -04:00
nick black
e8f0ff0f30 NCVISUAL_OPTION_CHILDPLANE unit tests for bitmap path #1603 2021-05-04 19:08:55 -04:00
nick black
d144d606f7 implement NCVISUAL_OPTION_CHILDPLANE on cell path #1603 2021-05-04 19:08:55 -04:00