From 8a29f30fb2a949c03b318c4f7699136a8001be37 Mon Sep 17 00:00:00 2001 From: Joris Date: Sun, 13 Feb 2022 12:17:00 +0100 Subject: Synchronize deck only if necessary Look at the modification time of the deck, and synchronize if it has been modified after the last deck read. --- src/gui/message.rs | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'src/gui/message.rs') diff --git a/src/gui/message.rs b/src/gui/message.rs index 01d124e..28a1d2c 100644 --- a/src/gui/message.rs +++ b/src/gui/message.rs @@ -12,8 +12,9 @@ use tui::{ pub fn show( terminal: &mut Terminal, events: &Events, - title: &String, - message: &String, + title: &str, + message: &str, + wait: bool, ) -> Result<()> { loop { terminal.draw(|f| { @@ -26,16 +27,22 @@ pub fn show( let d1 = util::title(title); f.render_widget(d1, chunks[0]); - let message = Paragraph::new(util::center_vertically(chunks[1], &message)) + let message = Paragraph::new(util::center_vertically(chunks[1], &message.to_string())) .alignment(Alignment::Center); f.render_widget(message, chunks[1]); })?; - if let Event::Input(key) = events.next()? { - match key { - Key::Char('q') => return Ok(()), - _ => (), + if wait { + if let Event::Input(key) = events.next()? { + match key { + Key::Char('q') => break, + _ => (), + } } + } else { + break; } } + + Ok(()) } -- cgit v1.2.3