summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorClement Tsang <34804052+ClementTsang@users.noreply.github.com>2021-04-09 16:14:01 -0400
committerGitHub <noreply@github.com>2021-04-09 16:14:01 -0400
commitcc03d57f37e4beb28d135451b32c7ba26c548133 (patch)
tree0363595da9f5f87a45a3e97c0e4149c57c13ad8e /src
parent8c7e85b923a7c94e9425f6670d1051de1ebe8f17 (diff)
change: Add decimal to disk values larger than 1GB (#451)
A bit of a followup to #449, this adds decimal places for values over 1GB in regards to disk usage. This affects the disk widget (for the read/write per second) and process widgets (total read, total write, read/write per second).
Diffstat (limited to 'src')
-rw-r--r--src/app/data_farmer.rs14
-rw-r--r--src/data_conversion.rs33
2 files changed, 37 insertions, 10 deletions
diff --git a/src/app/data_farmer.rs b/src/app/data_farmer.rs
index 4a2f470e..c58e4f1b 100644
--- a/src/app/data_farmer.rs
+++ b/src/app/data_farmer.rs
@@ -19,7 +19,7 @@ use std::{time::Instant, vec::Vec};
use crate::app::data_harvester::load_avg::LoadAvgHarvest;
use crate::{
data_harvester::{batteries, cpu, disks, load_avg, mem, network, processes, temperature, Data},
- utils::gen_util::get_decimal_bytes,
+ utils::gen_util::{get_decimal_bytes, GIGA_LIMIT},
};
use regex::Regex;
@@ -296,8 +296,16 @@ impl DataCollection {
let converted_read = get_decimal_bytes(r_rate);
let converted_write = get_decimal_bytes(w_rate);
*io_labels = (
- format!("{:.*}{}/s", 0, converted_read.0, converted_read.1),
- format!("{:.*}{}/s", 0, converted_write.0, converted_write.1),
+ if r_rate >= GIGA_LIMIT {
+ format!("{:.*}{}/s", 1, converted_read.0, converted_read.1)
+ } else {
+ format!("{:.*}{}/s", 0, converted_read.0, converted_read.1)
+ },
+ if w_rate >= GIGA_LIMIT {
+ format!("{:.*}{}/s", 1, converted_write.0, converted_write.1)
+ } else {
+ format!("{:.*}{}/s", 0, converted_write.0, converted_write.1)
+ },
);
}
}
diff --git a/src/data_conversion.rs b/src/data_conversion.rs
index 185aa811..c0f8529e 100644
--- a/src/data_conversion.rs
+++ b/src/data_conversion.rs
@@ -586,13 +586,32 @@ fn get_disk_io_strings(
let converted_total_write = get_decimal_bytes(total_write);
(
- format!("{:.*}{}/s", 0, converted_rps.0, converted_rps.1),
- format!("{:.*}{}/s", 0, converted_wps.0, converted_wps.1),
- format!("{:.*}{}", 0, converted_total_read.0, converted_total_read.1),
- format!(
- "{:.*}{}",
- 0, converted_total_write.0, converted_total_write.1
- ),
+ if rps >= GIGA_LIMIT {
+ format!("{:.*}{}/s", 1, converted_rps.0, converted_rps.1)
+ } else {
+ format!("{:.*}{}/s", 0, converted_rps.0, converted_rps.1)
+ },
+ if wps >= GIGA_LIMIT {
+ format!("{:.*}{}/s", 1, converted_wps.0, converted_wps.1)
+ } else {
+ format!("{:.*}{}/s", 0, converted_wps.0, converted_wps.1)
+ },
+ if total_read >= GIGA_LIMIT {
+ format!("{:.*}{}", 1, converted_total_read.0, converted_total_read.1)
+ } else {
+ format!("{:.*}{}", 0, converted_total_read.0, converted_total_read.1)
+ },
+ if total_write >= GIGA_LIMIT {
+ format!(
+ "{:.*}{}",
+ 1, converted_total_write.0, converted_total_write.1
+ )
+ } else {
+ format!(
+ "{:.*}{}",
+ 0, converted_total_write.0, converted_total_write.1
+ )
+ },
)
}