Use alternate buffer
This commit is contained in:
parent
c32b837df7
commit
a39eb66be8
1 changed files with 10 additions and 2 deletions
12
src/main.rs
12
src/main.rs
|
|
@ -173,6 +173,12 @@ pub enum AppInstruction {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn start(mut os_input: Box<dyn OsApi>, opts: CliArgs) {
|
pub fn start(mut os_input: Box<dyn OsApi>, opts: CliArgs) {
|
||||||
|
let take_snapshot = "\u{1b}[?1049h";
|
||||||
|
os_input.unset_raw_mode(0);
|
||||||
|
let _ = os_input
|
||||||
|
.get_stdout_writer()
|
||||||
|
.write(take_snapshot.as_bytes())
|
||||||
|
.unwrap();
|
||||||
let mut app_state = AppState::default();
|
let mut app_state = AppState::default();
|
||||||
|
|
||||||
let command_is_executing = CommandIsExecuting::new();
|
let command_is_executing = CommandIsExecuting::new();
|
||||||
|
|
@ -209,6 +215,7 @@ pub fn start(mut os_input: Box<dyn OsApi>, opts: CliArgs) {
|
||||||
os_input.clone(),
|
os_input.clone(),
|
||||||
opts.debug,
|
opts.debug,
|
||||||
);
|
);
|
||||||
|
|
||||||
// Don't use default layouts in tests, but do everywhere else
|
// Don't use default layouts in tests, but do everywhere else
|
||||||
#[cfg(not(test))]
|
#[cfg(not(test))]
|
||||||
let default_layout = Some(PathBuf::from("default"));
|
let default_layout = Some(PathBuf::from("default"));
|
||||||
|
|
@ -683,10 +690,11 @@ pub fn start(mut os_input: Box<dyn OsApi>, opts: CliArgs) {
|
||||||
// cleanup();
|
// cleanup();
|
||||||
let reset_style = "\u{1b}[m";
|
let reset_style = "\u{1b}[m";
|
||||||
let show_cursor = "\u{1b}[?25h";
|
let show_cursor = "\u{1b}[?25h";
|
||||||
|
let restore_snapshot = "\u{1b}[?1049l";
|
||||||
let goto_start_of_last_line = format!("\u{1b}[{};{}H", full_screen_ws.rows, 1);
|
let goto_start_of_last_line = format!("\u{1b}[{};{}H", full_screen_ws.rows, 1);
|
||||||
let goodbye_message = format!(
|
let goodbye_message = format!(
|
||||||
"{}\n{}{}Bye from Mosaic!",
|
"{}\n{}{}{}Bye from Mosaic!",
|
||||||
goto_start_of_last_line, reset_style, show_cursor
|
goto_start_of_last_line, restore_snapshot, reset_style, show_cursor
|
||||||
);
|
);
|
||||||
|
|
||||||
os_input.unset_raw_mode(0);
|
os_input.unset_raw_mode(0);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue