From 2597e1954659608c94965015651e3eac1f12a206 Mon Sep 17 00:00:00 2001 From: Jesse Luehrs Date: Wed, 17 Nov 2021 22:32:46 -0500 Subject: don't draw the readline over a fullscreen command --- src/history.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/history.rs') diff --git a/src/history.rs b/src/history.rs index c55f62c..4421e20 100644 --- a/src/history.rs +++ b/src/history.rs @@ -136,8 +136,8 @@ impl History { ) -> anyhow::Result<()> { if let Some(idx) = focus { let mut entry = self.entries[idx].lock_arc().await; - if entry.should_full_screen() { - entry.render_full_screen(out); + if entry.should_fullscreen() { + entry.render_fullscreen(out); return Ok(()); } } @@ -184,6 +184,10 @@ impl History { self.entries[idx].lock_arc().await.toggle_fullscreen(); } + pub async fn is_fullscreen(&self, idx: usize) -> bool { + self.entries[idx].lock_arc().await.should_fullscreen() + } + pub fn entry_count(&self) -> usize { self.entries.len() } @@ -340,12 +344,12 @@ impl HistoryEntry { out.reset_attributes(); } - fn should_full_screen(&self) -> bool { + fn should_fullscreen(&self) -> bool { self.fullscreen .unwrap_or_else(|| self.vt.screen().alternate_screen()) } - fn render_full_screen(&mut self, out: &mut textmode::Output) { + fn render_fullscreen(&mut self, out: &mut textmode::Output) { let screen = self.vt.screen(); let new_audible_bell_state = screen.audible_bell_count(); let new_visual_bell_state = screen.visual_bell_count(); -- cgit v1.2.3-54-g00ecf