diff options
Diffstat (limited to 'src/display/components/header_details.rs')
-rw-r--r-- | src/display/components/header_details.rs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/display/components/header_details.rs b/src/display/components/header_details.rs index a3b0766..042d667 100644 --- a/src/display/components/header_details.rs +++ b/src/display/components/header_details.rs @@ -1,11 +1,11 @@ +use crate::display::{DisplayBandwidth, UIState}; +use ::std::time::{Duration, Instant}; use ::tui::backend::Backend; use ::tui::layout::{Alignment, Rect}; use ::tui::style::{Color, Modifier, Style}; use ::tui::terminal::Frame; use ::tui::widgets::{Paragraph, Text, Widget}; -use crate::display::{DisplayBandwidth, UIState}; - const SECONDS_IN_DAY: u64 = 86400; pub struct HeaderDetails<'a> { @@ -14,6 +14,14 @@ pub struct HeaderDetails<'a> { pub paused: bool, } +pub fn elapsed_time(last_start_time: Instant, cumulative_time: Duration, paused: bool) -> Duration { + if paused { + cumulative_time + } else { + cumulative_time + last_start_time.elapsed() + } +} + impl<'a> HeaderDetails<'a> { #[allow(clippy::int_plus_one)] pub fn render(&self, frame: &mut Frame<impl Backend>, rect: Rect) { |