diff --git a/src/widgets/batterywidget.rs b/src/widgets/batterywidget.rs index f039fd3..8e02dc3 100644 --- a/src/widgets/batterywidget.rs +++ b/src/widgets/batterywidget.rs @@ -51,7 +51,7 @@ fn select_icon(status: &str, level: &str) -> SharedString { }, "notcharging" => "󰂃", "full" => "󰂄", - _ => "󰂑", // unknown fallback + _ => "󰂑", // Unknown fallback }; SharedString::from(icon) @@ -83,11 +83,13 @@ fn start_battery_updater(ui: &TopBar) { // Select icon let icon = select_icon(&status, &final_level); + // Compose tooltip text (Rust handles it now) + let tooltip = format!("Battery: {cap}% ({status})"); + // Update Slint properties - ui.set_battery_status(status.into()); - ui.set_battery_capacity(cap.into()); - ui.set_battery_capacity_level(final_level.into()); ui.set_battery_icon(icon); + ui.set_battery_capacity_level(final_level.into()); + ui.set_battery_tooltip(tooltip.into()); } }); } @@ -99,7 +101,7 @@ pub fn install(ui: &TopBar) { // Click → open battery monitor ui.on_show_battery(move || { if weak.upgrade().is_some() { - run_cmd("xclock"); // Fix later + run_cmd("xclock"); // Placeholder: Fix later } }); diff --git a/ui/battery-widget.slint b/ui/battery-widget.slint index 8337888..2190095 100644 --- a/ui/battery-widget.slint +++ b/ui/battery-widget.slint @@ -1,10 +1,5 @@ import { SquareIconWidget } from "square-icon-widget.slint"; export component BatteryWidget inherits SquareIconWidget { - in property battery_status; - in property battery_capacity; - in property battery_capacity_level; - - // Compose tooltip here - tooltip_text: "Battery: " + battery_capacity + "% (" + battery_status + ")"; + in property battery_capacity_level; // To determine icon color later } diff --git a/ui/topbar.slint b/ui/topbar.slint index 1e302e2..13ff0bf 100644 --- a/ui/topbar.slint +++ b/ui/topbar.slint @@ -19,10 +19,9 @@ export component TopBar inherits Window { callback show_calendar(); // Battery widget - in property battery_status; - in property battery_capacity; - in property battery_capacity_level; + in property battery_tooltip; in property battery_icon; + in property battery_capacity_level; callback show_battery(); @@ -73,10 +72,9 @@ export component TopBar inherits Window { BatteryWidget { bar_height: root.bar_height; icon_text: root.battery_icon; - square_btn_callback => root.show_battery(); - battery_status: root.battery_status; - battery_capacity: root.battery_capacity; + tooltip_text: root.battery_tooltip; battery_capacity_level: root.battery_capacity_level; + square_btn_callback => root.show_battery(); } DateWidget {