diff options
Diffstat (limited to 'src/term')
-rw-r--r-- | src/term/mod.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/term/mod.rs b/src/term/mod.rs index e55af7ca..4a02944b 100644 --- a/src/term/mod.rs +++ b/src/term/mod.rs @@ -1417,7 +1417,9 @@ impl ansi::Handler for Term { #[inline] fn clear_line(&mut self, mode: ansi::LineClearMode) { trace!("clear_line: {:?}", mode); - let template = self.cursor.template; + let mut template = self.cursor.template; + template.flags ^= template.flags; + let col = self.cursor.point.col; match mode { @@ -1455,7 +1457,9 @@ impl ansi::Handler for Term { #[inline] fn clear_screen(&mut self, mode: ansi::ClearMode) { trace!("clear_screen: {:?}", mode); - let template = self.cursor.template; + let mut template = self.cursor.template; + template.flags ^= template.flags; + match mode { ansi::ClearMode::Below => { for cell in &mut self.grid[self.cursor.point.line][self.cursor.point.col..] { |