diff --git a/upower/src/device.rs b/upower/src/device.rs index 31bb0a1..8f6c604 100644 --- a/upower/src/device.rs +++ b/upower/src/device.rs @@ -111,6 +111,12 @@ trait Device { #[zbus(property)] fn temperature(&self) -> zbus::Result; + #[zbus(property)] + fn time_to_empty(&self) -> zbus::Result; + + #[zbus(property)] + fn time_to_full(&self) -> zbus::Result; + #[zbus(property, name = "Type")] fn type_(&self) -> zbus::Result; diff --git a/upower/src/kbdbacklight.rs b/upower/src/kbdbacklight.rs new file mode 100644 index 0000000..46834ee --- /dev/null +++ b/upower/src/kbdbacklight.rs @@ -0,0 +1,28 @@ +// Copyright 2021 System76 +// SPDX-License-Identifier: MPL-2.0 + +use zbus::proxy; + +#[proxy( + default_service = "org.freedesktop.UPower", + interface = "org.freedesktop.UPower.KbdBacklight", + default_path = "/org/freedesktop/UPower/KbdBacklight" +)] +trait KbdBacklight { + /// GetBrightness method + fn get_brightness(&self) -> zbus::Result; + + /// GetMaxBrightness method + fn get_max_brightness(&self) -> zbus::Result; + + /// SetBrightness method + fn set_brightness(&self, value: i32) -> zbus::Result<()>; + + /// BrightnessChanged signal + #[zbus(signal)] + fn brightness_changed(&self, value: i32) -> zbus::Result<()>; + + /// BrightnessChangedWithSource signal + #[zbus(signal)] + fn brightness_changed_with_source(&self, value: i32, source: &str) -> zbus::Result<()>; +} diff --git a/upower/src/lib.rs b/upower/src/lib.rs index a6cc00b..0d2d309 100644 --- a/upower/src/lib.rs +++ b/upower/src/lib.rs @@ -3,7 +3,9 @@ #![doc = include_str!("../README.md")] mod device; +mod kbdbacklight; mod upower; pub use self::device::*; +pub use self::kbdbacklight::*; pub use self::upower::*;