aboutsummaryrefslogtreecommitdiff
path: root/src/device.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/device.c')
-rw-r--r--src/device.c20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/device.c b/src/device.c
index 05eb15e..f03d514 100644
--- a/src/device.c
+++ b/src/device.c
@@ -3,9 +3,11 @@
A simple Device structure used internally by indicator-power
Copyright 2012 Canonical Ltd.
+Copyright 2021 AyatanaIndicators
Authors:
Charles Kerr <charles.kerr@canonical.com>
+ Robert Tari <robert@tari.in>
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -773,6 +775,15 @@ get_menuitem_text (const IndicatorPowerDevice * device,
time_str = get_expanded_time_remaining (device);
}
+ if (p->percentage > 0.01 && time_str != NULL)
+ {
+ if (g_str_equal(time_str, _("estimating…")) || g_str_equal(time_str, _("unknown")))
+ {
+ g_free(time_str);
+ time_str = NULL;
+ }
+ }
+
if (time_str && *time_str)
{
/* TRANSLATORS: example: "battery (time remaining)" */
@@ -780,7 +791,14 @@ get_menuitem_text (const IndicatorPowerDevice * device,
}
else
{
- str = g_strdup (kind_str);
+ if (p->percentage > 0.01)
+ {
+ str = g_strdup_printf("%s (%.0lf%%)", kind_str, p->percentage);
+ }
+ else
+ {
+ str = g_strdup (kind_str);
+ }
}
g_free (time_str);