mirror of
https://codeberg.org/dnkl/foot.git
synced 2026-02-08 10:06:22 -05:00
term: cursor blink: dirty multi-cursor cells too
This commit is contained in:
parent
dcabe14392
commit
7996267d7b
1 changed files with 18 additions and 0 deletions
18
terminal.c
18
terminal.c
|
|
@ -525,6 +525,24 @@ cursor_refresh(struct terminal *term)
|
|||
|
||||
term->grid->cur_row->cells[term->grid->cursor.point.col].attrs.clean = 0;
|
||||
term->grid->cur_row->dirty = true;
|
||||
|
||||
if (unlikely(term->multi_cursor.shapes != NULL)) {
|
||||
int rect_count = 0;
|
||||
const pixman_box32_t *boxes = pixman_region32_rectangles(&term->multi_cursor.active, &rect_count);
|
||||
|
||||
for (int i = 0; i < rect_count; i++) {
|
||||
const pixman_box32_t *box = &boxes[i];
|
||||
|
||||
for (int r = box->y1; r < box->y2; r++) {
|
||||
struct row *row = term->grid->rows[r];
|
||||
row->dirty = true;
|
||||
|
||||
for (int c = box->x1; c < box->x2; c++)
|
||||
row->cells[c].attrs.clean = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
render_refresh(term);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue