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

Ali Abdallah aliov at xfce.org
Fri May 29 17:37:04 CEST 2009


Author: aliov
Date: 2009-05-29 15:37:04 +0000 (Fri, 29 May 2009)
New Revision: 7438

Modified:
   xfce4-power-manager/trunk/ChangeLog
   xfce4-power-manager/trunk/libxfpm/xfpm-notify.c
   xfce4-power-manager/trunk/src/xfpm-battery.c
   xfce4-power-manager/trunk/src/xfpm-enum-glib.h
Log:
	*: Fix harmless glib warning when we close the critical notification.
	*: More verbosity in the battery when debug full is provided.

Modified: xfce4-power-manager/trunk/ChangeLog
===================================================================
--- xfce4-power-manager/trunk/ChangeLog	2009-05-29 12:10:06 UTC (rev 7437)
+++ xfce4-power-manager/trunk/ChangeLog	2009-05-29 15:37:04 UTC (rev 7438)
@@ -1,3 +1,7 @@
+2009-05-29: 17:30 Ali aliov at xfce.org
+	*: Fix harmless glib warning when we close the critical notification.
+	*: More verbosity in the battery when debug full is provided.
+
 2009-05-27: 11:00 Ali aliov at xfce.org
 	*: use G_HAVE_ISO_VARARGS to chech if variadic macro are supported
 	*: Fix some English mispelling mistakes in the doc.

Modified: xfce4-power-manager/trunk/libxfpm/xfpm-notify.c
===================================================================
--- xfce4-power-manager/trunk/libxfpm/xfpm-notify.c	2009-05-29 12:10:06 UTC (rev 7437)
+++ xfce4-power-manager/trunk/libxfpm/xfpm-notify.c	2009-05-29 15:37:04 UTC (rev 7438)
@@ -59,6 +59,7 @@
 struct XfpmNotifyPrivate
 {
     NotifyNotification *notification;
+    NotifyNotification *critical;
 };
 
 static gpointer xfpm_notify_object = NULL;
@@ -82,6 +83,7 @@
     notify->priv = XFPM_NOTIFY_GET_PRIVATE(notify);
     
     notify->priv->notification = NULL;
+    notify->priv->critical = NULL;
 }
 
 static void
@@ -139,8 +141,9 @@
 }
 
 static void
-xfpm_notify_close_critical_cb (NotifyNotification *n, gpointer data)
+xfpm_notify_close_critical_cb (NotifyNotification *n, XfpmNotify *notify)
 {
+    notify->priv->critical = NULL;
     g_object_unref (G_OBJECT (n));
 }
 
@@ -244,24 +247,29 @@
 void xfpm_notify_critical (XfpmNotify *notify, NotifyNotification *n)
 {
     g_return_if_fail (XFPM_IS_NOTIFY (notify));
+
+    xfpm_notify_close_critical (notify);
     
-    g_object_set_data (G_OBJECT (notify), "critical", n);
+    notify->priv->critical = n;
     
     g_signal_connect (G_OBJECT (n), "closed", 
-		      G_CALLBACK (xfpm_notify_close_critical_cb), NULL);
+		      G_CALLBACK (xfpm_notify_close_critical_cb), notify);
 		      
     g_idle_add ((GSourceFunc) xfpm_notify_show, n);
 }
 
 void xfpm_notify_close_critical (XfpmNotify *notify)
 {
-    NotifyNotification *n;
     g_return_if_fail (XFPM_IS_NOTIFY (notify));
     
-    n = (NotifyNotification *)  g_object_get_data (G_OBJECT (notify), "critical");
-    
-    if ( n )
-	g_object_unref (n);
+    if ( notify->priv->critical )
+    {
+    	if (!notify_notification_close (notify->priv->critical, NULL))
+	    g_warning ("Failed to close notification\n");
+	
+	g_object_unref (G_OBJECT(notify->priv->critical) );
+	notify->priv->critical  = NULL;
+    }
 }
 
 void xfpm_notify_close_normal  (XfpmNotify *notify)

Modified: xfce4-power-manager/trunk/src/xfpm-battery.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-battery.c	2009-05-29 12:10:06 UTC (rev 7437)
+++ xfce4-power-manager/trunk/src/xfpm-battery.c	2009-05-29 15:37:04 UTC (rev 7438)
@@ -157,8 +157,6 @@
 {
     gchar *icon;
 
-    XFPM_DEBUG_ENUM ("battery state", battery->priv->state, XFPM_TYPE_BATTERY_STATE);
-    
     if ( state == BATTERY_NOT_PRESENT )
     {
 	xfpm_tray_icon_set_icon (battery->priv->icon, 
@@ -338,6 +336,7 @@
     if ( battery->priv->state != state)
     {
 	battery->priv->state = state;
+	XFPM_DEBUG_ENUM ("battery state change", battery->priv->state, XFPM_TYPE_BATTERY_STATE);
 	TRACE("Emitting signal battery state changed");
 	g_signal_emit (G_OBJECT(battery), signals[BATTERY_STATE_CHANGED], 0, state);
 	
@@ -392,6 +391,8 @@
     
     XfpmBatteryState state = battery->priv->state;
     
+    TRACE ("Start");
+    
     if ( !is_present )
     {
 	xfpm_tray_icon_set_tooltip(battery->priv->icon, _("Battery not present"));
@@ -402,6 +403,8 @@
     str = xfpm_battery_get_battery_state (&state, is_charging, is_discharging,
 					  last_full, current_charge, percentage, critical_level);
     
+    XFPM_DEBUG_ENUM ("battery state", state, XFPM_TYPE_BATTERY_STATE);
+    
     if ( time_per != 0  && time_per <= 28800 /* 8 hours */ && 
 	 state != BATTERY_FULLY_CHARGED && state != BATTERY_NOT_FULLY_CHARGED )
     {
@@ -598,6 +601,7 @@
     battery->priv->adapter   = xfpm_adapter_new ();
     battery->priv->conf      = xfpm_xfconf_new ();
     battery->priv->notify    = xfpm_notify_new ();
+    battery->priv->state = BATTERY_STATE_UNKNOWN;
     
     battery->priv->adapter_present = xfpm_adapter_get_present (battery->priv->adapter);
     

Modified: xfce4-power-manager/trunk/src/xfpm-enum-glib.h
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-enum-glib.h	2009-05-29 12:10:06 UTC (rev 7437)
+++ xfce4-power-manager/trunk/src/xfpm-enum-glib.h	2009-05-29 15:37:04 UTC (rev 7438)
@@ -45,7 +45,8 @@
     BATTERY_IS_DISCHARGING,
     BATTERY_CHARGE_LOW,
     BATTERY_CHARGE_CRITICAL,
-    BATTERY_NOT_PRESENT
+    BATTERY_NOT_PRESENT,
+    BATTERY_STATE_UNKNOWN
     
 } XfpmBatteryState;
 




More information about the Goodies-commits mailing list