summaryrefslogtreecommitdiffstats
path: root/src/display/components/header_details.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/display/components/header_details.rs')
-rw-r--r--src/display/components/header_details.rs12
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) {