mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-05 04:06:08 -05:00
term: term_erase(): call sixel_delete_*()
This ensures sixel images are removed, regardless of _how_ the screen was erased.
This commit is contained in:
parent
afa9ac0cfc
commit
4c6f2ea340
2 changed files with 4 additions and 2 deletions
4
sixel.c
4
sixel.c
|
|
@ -156,8 +156,6 @@ sixel_unhook(struct terminal *term)
|
|||
term->sixel.image.data,
|
||||
term->sixel.image.width * sizeof(uint32_t));
|
||||
|
||||
tll_push_back(term->sixel_images, image);
|
||||
|
||||
term->sixel.image.data = NULL;
|
||||
term->sixel.image.width = 0;
|
||||
term->sixel.image.height = 0;
|
||||
|
|
@ -168,6 +166,8 @@ sixel_unhook(struct terminal *term)
|
|||
term_linefeed(term);
|
||||
term_formfeed(term);
|
||||
render_refresh(term);
|
||||
|
||||
tll_push_back(term->sixel_images, image);
|
||||
}
|
||||
|
||||
static unsigned
|
||||
|
|
|
|||
|
|
@ -1366,6 +1366,7 @@ term_erase(struct terminal *term, const struct coord *start, const struct coord
|
|||
if (start->row == end->row) {
|
||||
struct row *row = grid_row(term->grid, start->row);
|
||||
erase_cell_range(term, row, start->col, end->col);
|
||||
sixel_delete_at_row(term, start->row);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -1378,6 +1379,7 @@ term_erase(struct terminal *term, const struct coord *start, const struct coord
|
|||
erase_line(term, grid_row(term->grid, r));
|
||||
|
||||
erase_cell_range(term, grid_row(term->grid, end->row), 0, end->col);
|
||||
sixel_delete_in_range(term, start->row, end->row);
|
||||
}
|
||||
|
||||
int
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue