[gnome-settings-daemon] power: Use is-present to mark whether the composite device is relevant



commit 269c7f7e1f705be63a46382e9af0eef73142e7cf
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Mon Jun 10 13:38:27 2013 -0400

    power: Use is-present to mark whether the composite device is relevant
    
    https://bugzilla.gnome.org/show_bug.cgi?id=700913

 plugins/power/gsd-power-manager.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)
---
diff --git a/plugins/power/gsd-power-manager.c b/plugins/power/gsd-power-manager.c
index 9f69dd9..555ba6a 100644
--- a/plugins/power/gsd-power-manager.c
+++ b/plugins/power/gsd-power-manager.c
@@ -713,6 +713,7 @@ engine_update_composite_device (GsdPowerManager *manager)
         gdouble energy_rate_total = 0.0;
         gint64 time_to_empty = 0;
         gint64 time_to_full = 0;
+        guint battery_devices = 0;
         gboolean is_charging = FALSE;
         gboolean is_discharging = FALSE;
         gboolean is_fully_charged = TRUE;
@@ -751,8 +752,12 @@ engine_update_composite_device (GsdPowerManager *manager)
                 energy_total += energy;
                 energy_full_total += energy_full;
                 energy_rate_total += energy_rate;
+                battery_devices++;
         }
 
+        if (battery_devices == 0)
+                goto out;
+
         /* use percentage weighted for each battery capacity */
         if (energy_full_total > 0.0)
                 percentage = 100.0 * energy_total / energy_full_total;
@@ -775,6 +780,7 @@ engine_update_composite_device (GsdPowerManager *manager)
                         time_to_full = 3600 * ((energy_full_total - energy_total) / energy_rate_total);
         }
 
+ out:
         g_debug ("printing composite device");
         g_object_set (manager->priv->device_composite,
                       "energy", energy_total,
@@ -784,6 +790,7 @@ engine_update_composite_device (GsdPowerManager *manager)
                       "time-to-full", time_to_full,
                       "percentage", percentage,
                       "state", state,
+                      "is-present", (battery_devices > 0),
                       NULL);
 
         /* force update of icon */


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]