summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorDoridian <git@doridian.net>2025-04-17 18:18:20 -0700
committerDoridian <git@doridian.net>2025-04-17 21:16:52 -0700
commit09777942e5421ee19143f1cc97542dffaea6b0b5 (patch)
tree02b8231c8b9f1030b1f8a80c7e6e926f07122347 /lua
parent20ccf51d2ba386d960e60b993ceaa02e3bda557c (diff)
downloadtangara-fw-09777942e5421ee19143f1cc97542dffaea6b0b5.tar.gz
Add more themeing subjects to the status bar
Diffstat (limited to 'lua')
-rw-r--r--lua/widgets.lua14
1 files changed, 12 insertions, 2 deletions
diff --git a/lua/widgets.lua b/lua/widgets.lua
index 5e2ed858..6274cd1c 100644
--- a/lua/widgets.lua
+++ b/lua/widgets.lua
@@ -112,8 +112,9 @@ function widgets.StatusBar(parent, opts)
}
if not opts.transparent_bg then
- theme.set_subject(root, "header");
+ theme.set_subject(root, "header")
end
+ theme.set_subject(root, "status_bar")
if opts.back_cb then
local back = root:Button {
@@ -148,6 +149,7 @@ function widgets.StatusBar(parent, opts)
if opts.title then
title:set { text = opts.title }
end
+ theme.set_subject(title, "status_bar_title")
local db_updating = root:Image { src = img.db }
theme.set_subject(db_updating, "database_indicator")
@@ -160,9 +162,10 @@ function widgets.StatusBar(parent, opts)
local is_charging = nil
local percent = nil
+ local charge_state = nil
local function update_battery_icon()
- if is_charging == nil or percent == nil then return end
+ if is_charging == nil or percent == nil or charge_state == nil then return end
local src
theme.set_subject(battery_icon, "battery")
if percent >= 95 then
@@ -184,10 +187,13 @@ function widgets.StatusBar(parent, opts)
theme.set_subject(battery_icon, "battery_0")
src = img.bat_0
end
+ theme.set_subject(battery_icon, "battery_state_" .. charge_state)
if is_charging then
theme.set_subject(battery_icon, "battery_charging")
theme.set_subject(charge_icon, "battery_charge_icon")
+ theme.set_subject(charge_icon, "battery_charge_icon_state_" .. charge_state)
theme.set_subject(charge_icon_outline, "battery_charge_outline")
+ theme.set_subject(charge_icon_outline, "battery_charge_icon_outline_state_" .. charge_state)
charge_icon:clear_flag(lvgl.FLAG.HIDDEN)
charge_icon_outline:clear_flag(lvgl.FLAG.HIDDEN)
else
@@ -209,6 +215,10 @@ function widgets.StatusBar(parent, opts)
percent = pct
update_battery_icon()
end),
+ power.charge_state:bind(function(state)
+ charge_state = state
+ update_battery_icon()
+ end),
power.plugged_in:bind(function(p)
is_charging = p
update_battery_icon()