Fix line indicator damage computation

The starting point of damage should be computed from the right side
of the terminal, not from the starting point of line indicator.
This commit is contained in:
Kirill Chibisov 2022-03-10 15:25:01 +03:00 committed by GitHub
parent dbccd7e30f
commit a69c3c408f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 2 deletions

View File

@ -869,8 +869,9 @@ impl Display {
// Damage the maximum possible length of the format text, which could be achieved when
// using `MAX_SCROLLBACK_LINES` as current and total lines adding a `3` for formatting.
const MAX_LEN: usize = num_digits(MAX_SCROLLBACK_LINES) + 3;
self.damage_from_point(Point::new(0, point.column - MAX_LEN), MAX_LEN as u32 * 2);
const MAX_SIZE: usize = 2 * num_digits(MAX_SCROLLBACK_LINES) + 3;
let damage_point = Point::new(0, Column(size_info.columns().saturating_sub(MAX_SIZE)));
self.damage_from_point(damage_point, MAX_SIZE as u32);
let colors = &config.colors;
let fg = colors.line_indicator.foreground.unwrap_or(colors.primary.background);