aboutsummaryrefslogtreecommitdiff
path: root/src/term/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/term/mod.rs')
-rw-r--r--src/term/mod.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/term/mod.rs b/src/term/mod.rs
index 633aa904..58a5b314 100644
--- a/src/term/mod.rs
+++ b/src/term/mod.rs
@@ -779,7 +779,6 @@ impl ansi::Handler for Term {
/// A character to be displayed
#[inline]
fn input(&mut self, c: char) {
-
if self.input_needs_wrap {
if !self.mode.contains(mode::LINE_WRAP) {
@@ -1124,9 +1123,14 @@ impl ansi::Handler for Term {
let template = self.empty_cell;
match mode {
ansi::ClearMode::Below => {
- for row in &mut self.grid[self.cursor.point.line..] {
- for cell in row {
- cell.reset(&template);
+ for cell in &mut self.grid[self.cursor.point.line][self.cursor.point.col..] {
+ cell.reset(&template);
+ }
+ if self.cursor.point.line < self.grid.num_lines() - 1 {
+ for row in &mut self.grid[(self.cursor.point.line + 1)..] {
+ for cell in row {
+ cell.reset(&template);
+ }
}
}
},