diff options
author | Pablo Correa Gómez <ablocorrea@hotmail.com> | 2021-06-17 14:25:33 +0200 |
---|---|---|
committer | Pablo Correa Gómez <ablocorrea@hotmail.com> | 2021-06-18 13:08:59 +0200 |
commit | 9b2ab574e1c7d70a1e90a0ccf4cfb940af9b85bb (patch) | |
tree | 3346771b1ff1cf2a73ed7bc726f6c502c6a8ce91 /src/up-daemon.c | |
parent | b64902eed2efa1e91e8faa49b44bf6b1982b8375 (diff) | |
download | upower-9b2ab574e1c7d70a1e90a0ccf4cfb940af9b85bb.tar.gz |
daemon: Make get_device_charge_icon() public
Diffstat (limited to 'src/up-daemon.c')
-rw-r--r-- | src/up-daemon.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/up-daemon.c b/src/up-daemon.c index ef2cd6b..8fcaabe 100644 --- a/src/up-daemon.c +++ b/src/up-daemon.c @@ -704,6 +704,39 @@ up_daemon_update_warning_level (UpDaemon *daemon) up_daemon_set_warning_level (daemon, warning_level); } +const gchar * +up_daemon_get_charge_icon (gdouble percentage, + UpDeviceLevel battery_level, + gboolean charging) +{ + if (battery_level == UP_DEVICE_LEVEL_NONE && daemon != NULL) { + if (percentage < 10) + return charging ? "battery-caution-charging-symbolic" : "battery-caution-symbolic"; + else if (percentage < 30) + return charging ? "battery-low-charging-symbolic" : "battery-low-symbolic"; + else if (percentage < 60) + return charging ? "battery-good-charging-symbolic" : "battery-good-symbolic"; + return charging ? "battery-full-charging-symbolic" : "battery-full-symbolic"; + } else { + switch (battery_level) { + case UP_DEVICE_LEVEL_UNKNOWN: + /* The lack of symmetry is on purpose */ + return charging ? "battery-good-charging-symbolic" : "battery-caution-symbolic"; + case UP_DEVICE_LEVEL_LOW: + case UP_DEVICE_LEVEL_CRITICAL: + return charging ? "battery-caution-charging-symbolic" : "battery-caution-symbolic"; + case UP_DEVICE_LEVEL_NORMAL: + return charging ? "battery-low-charging-symbolic" : "battery-low-symbolic"; + case UP_DEVICE_LEVEL_HIGH: + return charging ? "battery-good-charging-symbolic" : "battery-good-symbolic"; + case UP_DEVICE_LEVEL_FULL: + return charging ? "battery-full-charging-symbolic" : "battery-full-symbolic"; + default: + g_assert_not_reached (); + } + } +} + /** * up_daemon_device_changed_cb: **/ |