@ -865,7 +865,7 @@ clean_sprixels(notcurses* nc, const ncpile* p, FILE* out){
ncplane_yx ( s - > n , & y , & x ) ;
y + = s - > y ;
x + = s - > x ;
//fprintf(stderr, "DRAWING BITMAP %d AT %d/%d for %p\n", s->id, y + nc->stdplane->absy, x + nc->stdplane->absx, s->n);
//fprintf(stderr, "DRAWING BITMAP %d STATE %d AT %d/%d for %p\n", s->id, s->invalidate d, y + nc->stdplane->absy, x + nc->stdplane->absx, s->n);
if ( goto_location ( nc , out , y + nc - > stdplane - > absy , x + nc - > stdplane - > absx ) = = 0 ) {
if ( sprite_draw ( nc , p , s , out ) ) {
return - 1 ;
@ -891,7 +891,7 @@ rasterize_sprixels(notcurses* nc, const ncpile* p, FILE* out){
ncplane_yx ( s - > n , & y , & x ) ;
y + = s - > y ;
x + = s - > x ;
//fprintf(stderr, "DRAWING BITMAP %d AT %d/%d for %p\n", s->id, y + nc->stdplane->absy, x + nc->stdplane->absx, s->n);
//fprintf(stderr, "DRAWING BITMAP %d STATE %d AT %d/%d for %p\n", s->id, s->invalidate d, y + nc->stdplane->absy, x + nc->stdplane->absx, s->n);
if ( goto_location ( nc , out , y + nc - > stdplane - > absy , x + nc - > stdplane - > absx ) = = 0 ) {
if ( sprite_draw ( nc , p , s , out ) ) {
return - 1 ;
@ -1009,7 +1009,15 @@ rasterize_core(notcurses* nc, const ncpile* p, FILE* out, unsigned phase){
nc - > rstate . bgpalelidable = false ;
}
//fprintf(stderr, "RAST %08x [%s] to %d/%d cols: %u %016lx\n", srccell->gcluster, pool_extended_gcluster(&nc->pool, srccell), y, x, srccell->width, srccell->channels);
if ( rvec [ damageidx ] . sprixel ) {
// this is used to invalidate the sprixel in the first text round,
// which is only necessary for sixel, not kitty.
if ( rvec [ damageidx ] . sprixel
& & sprixel_state ( rvec [ damageidx ] . sprixel , y , x ) ! = SPRIXCELL_TRANSPARENT
& & sprixel_state ( rvec [ damageidx ] . sprixel , y , x ) ! = SPRIXCELL_ANNIHILATED
& & ! rvec [ damageidx ] . s . p_beats_sprixel
& & ! sprixel_kitty_p ( & nc - > tcache ) ) {
//fprintf(stderr, "INVALIDATING at %d/%d (%u)\n", y, x, rvec[damageidx].s.p_beats_sprixel);
sprixel_invalidate ( rvec [ damageidx ] . sprixel , y , x ) ;
}
if ( term_putc ( out , & nc - > pool , srccell ) ) {