summaryrefslogtreecommitdiffstats
path: root/src/term.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/term.rs')
-rw-r--r--src/term.rs10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/term.rs b/src/term.rs
index f9a3347..e382fdb 100644
--- a/src/term.rs
+++ b/src/term.rs
@@ -8,7 +8,7 @@ use termion::raw::{IntoRawMode, RawTerminal};
use parse_ansi::parse_bytes;
-use crate::fail::HResult;
+use crate::fail::{HResult, ErrorLog};
pub type TermMode = AlternateScreen<MouseTerminal<RawTerminal<BufWriter<Stdout>>>>;
@@ -22,7 +22,7 @@ pub struct Screen {
impl Screen {
pub fn new() -> HResult<Screen> {
let screen = BufWriter::new(std::io::stdout()).into_raw_mode()?;
- let mut screen = MouseTerminal::from(screen);
+ let screen = MouseTerminal::from(screen);
let mut screen = AlternateScreen::from(screen);
let terminal = std::env::var("TERM").unwrap_or("xterm".into());
@@ -35,12 +35,12 @@ impl Screen {
}
pub fn drop_screen(&mut self) {
- self.cursor_show();
- self.to_main_screen();
+ self.cursor_show().log();
+ self.to_main_screen().log();
self.screen = Arc::new(Mutex::new(None));
// Terminal stays fucked without this. Why?
- std::process::Command::new("reset").arg("-I").spawn();
+ Ok(std::process::Command::new("reset").arg("-I").spawn()).log();
}
pub fn reset_screen(&mut self) -> HResult<()> {