From ae533f1fe7675efb8b63f0a176e1fafa23dd94f9 Mon Sep 17 00:00:00 2001 From: Mustafa Salih <37256744+MustafaSalih1993@users.noreply.github.com> Date: Sun, 5 Sep 2021 17:22:33 +0300 Subject: Dev (#63) * Closes #62 added brightness block --- src/utils/brightness.rs | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/utils/brightness.rs (limited to 'src/utils/brightness.rs') diff --git a/src/utils/brightness.rs b/src/utils/brightness.rs new file mode 100644 index 0000000..b340907 --- /dev/null +++ b/src/utils/brightness.rs @@ -0,0 +1,28 @@ +use crate::config::CONFIG; +use crate::types::ThreadsData; +use std::fs::read_to_string; +use std::path::Path; + +// getting brightness +pub async fn get_brightness() -> ThreadsData { + let brightness_path = Path::new(&CONFIG.brightness.path); + if !brightness_path.exists() { + return ThreadsData::Brightness(String::from("brightness path not found")); + }; + let current_brightness = match read_to_string(Path::new(brightness_path).join("brightness")) { + Ok(brightness) => brightness.trim().to_owned().parse::().unwrap(), + _ => return ThreadsData::Brightness(String::from("error reading current brightness")), + }; + let max_brightness = match read_to_string(Path::new(brightness_path).join("max_brightness")) { + Ok(brightness) => brightness.trim().to_owned().parse::().unwrap(), + _ => return ThreadsData::Brightness(String::from("error reading max brightness")), + }; + + let value = (current_brightness / max_brightness) * 100.0; + + let result = format!( + " {} {:.0}% {}", + CONFIG.brightness.icon, value, CONFIG.seperator + ); + ThreadsData::Brightness(result) +} -- cgit v1.2.3