[Goodies-commits] r6941 - in xfce4-power-manager/trunk: . libxfpm src

Ali Abdallah aliov at xfce.org
Wed Mar 18 10:04:30 CET 2009


Author: aliov
Date: 2009-03-18 09:04:29 +0000 (Wed, 18 Mar 2009)
New Revision: 6941

Modified:
   xfce4-power-manager/trunk/ChangeLog
   xfce4-power-manager/trunk/libxfpm/hal-battery.c
   xfce4-power-manager/trunk/src/xfpm-brightness-hal.c
Log:
Calculate battery percentage if this key is not present in HAL

Modified: xfce4-power-manager/trunk/ChangeLog
===================================================================
--- xfce4-power-manager/trunk/ChangeLog	2009-03-18 08:30:14 UTC (rev 6940)
+++ xfce4-power-manager/trunk/ChangeLog	2009-03-18 09:04:29 UTC (rev 6941)
@@ -1,4 +1,7 @@
 
+2009-03-18 10:04 Ali aliov at xfce.org 
+	 * : Calculate battery percentage if this key is not present in HAL
+
 2009-03-18  9:30 Ali aliov at xfce.org 
 	 * : Check carefully if a new added device is a new battery device(hald always duplicated udi for devices)
 

Modified: xfce4-power-manager/trunk/libxfpm/hal-battery.c
===================================================================
--- xfce4-power-manager/trunk/libxfpm/hal-battery.c	2009-03-18 08:30:14 UTC (rev 6940)
+++ xfce4-power-manager/trunk/libxfpm/hal-battery.c	2009-03-18 09:04:29 UTC (rev 6941)
@@ -402,6 +402,19 @@
     return type_enum;
 }
 
+static guint 
+_get_battery_percentage (guint32 last_full, guint32 current)
+{
+    guint val = 100;
+    
+    if ( last_full <= current ) return val;
+    
+    float f = (float)current/last_full *100;
+	
+	val = (guint)f;
+    return val;   
+}
+
 static void
 hal_battery_refresh_all (HalBattery *battery)
 {
@@ -431,7 +444,7 @@
     if ( hal_device_has_key(HAL_DEVICE(battery), "battery.charge_level.percentage") )
      	battery->priv->percentage = 
     		hal_device_get_property_int(HAL_DEVICE(battery), "battery.charge_level.percentage");
-    else battery->priv->percentage = 0;
+    else battery->priv->percentage = _get_battery_percentage(battery->priv->last_full, battery->priv->current_charge);
     
     if ( hal_device_has_key(HAL_DEVICE(battery), "battery.reporting.last_full") )
      	battery->priv->reporting_last_full = 

Modified: xfce4-power-manager/trunk/src/xfpm-brightness-hal.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-brightness-hal.c	2009-03-18 08:30:14 UTC (rev 6940)
+++ xfce4-power-manager/trunk/src/xfpm-brightness-hal.c	2009-03-18 09:04:29 UTC (rev 6941)
@@ -240,7 +240,7 @@
     
     udi = hal_manager_find_device_by_capability (manager, "laptop_panel");
     
-    if ( !udi )
+    if ( !udi || !udi[0])
     {
 	g_object_unref ( manager);
     	return FALSE;




More information about the Goodies-commits mailing list