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

Ali Abdallah aliov at xfce.org
Sat Mar 28 17:19:16 CET 2009


Author: aliov
Date: 2009-03-28 16:19:16 +0000 (Sat, 28 Mar 2009)
New Revision: 7018

Added:
   xfce4-power-manager/trunk/libxfpm/hal-monitor.c
   xfce4-power-manager/trunk/libxfpm/hal-monitor.h
Removed:
   xfce4-power-manager/trunk/libxfpm/hal-proxy.c
   xfce4-power-manager/trunk/libxfpm/hal-proxy.h
Modified:
   xfce4-power-manager/trunk/ChangeLog
   xfce4-power-manager/trunk/libxfpm/Makefile.am
   xfce4-power-manager/trunk/po/POTFILES.in
   xfce4-power-manager/trunk/src/xfpm-battery.c
   xfce4-power-manager/trunk/src/xfpm-cpu.c
   xfce4-power-manager/trunk/src/xfpm-enum-glib.h
   xfce4-power-manager/trunk/src/xfpm-enum.h
   xfce4-power-manager/trunk/src/xfpm-manager.c
   xfce4-power-manager/trunk/src/xfpm-supply.c
   xfce4-power-manager/trunk/src/xfpm-xfconf.c
Log:
Handle hald is not running or disconnected

Modified: xfce4-power-manager/trunk/ChangeLog
===================================================================
--- xfce4-power-manager/trunk/ChangeLog	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/ChangeLog	2009-03-28 16:19:16 UTC (rev 7018)
@@ -1,4 +1,7 @@
 
+2009-03-28 17:19 Ali aliov at xfce.org 
+	 * : Handle hald is not running or disconnected
+
 2009-03-28 14:47 Ali aliov at xfce.org 
 	 * : Move the context menu to xfpm-tray-icon
 

Modified: xfce4-power-manager/trunk/libxfpm/Makefile.am
===================================================================
--- xfce4-power-manager/trunk/libxfpm/Makefile.am	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/libxfpm/Makefile.am	2009-03-28 16:19:16 UTC (rev 7018)
@@ -8,8 +8,8 @@
 	xfpm-string.h			\
 	hal-marshal.c			\
 	hal-marshal.h			\
-	hal-proxy.c			\
-	hal-proxy.h			\
+	hal-monitor.c			\
+	hal-monitor.h			\
 	hal-manager.c			\
 	hal-manager.h			\
 	hal-power.c			\

Added: xfce4-power-manager/trunk/libxfpm/hal-monitor.c
===================================================================
--- xfce4-power-manager/trunk/libxfpm/hal-monitor.c	                        (rev 0)
+++ xfce4-power-manager/trunk/libxfpm/hal-monitor.c	2009-03-28 16:19:16 UTC (rev 7018)
@@ -0,0 +1,206 @@
+/*
+ * * Copyright (C) 2008 Ali <aliov at xfce.org>
+ *
+ * Licensed under the GNU General Public License Version 2
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include <glib.h>
+
+#include <dbus/dbus-glib.h>
+
+#include "hal-monitor.h"
+#include "xfpm-string.h"
+
+/* Init */
+static void hal_monitor_class_init (HalMonitorClass *klass);
+static void hal_monitor_init       (HalMonitor *monitor);
+static void hal_monitor_finalize   (GObject *object);
+
+#define HAL_MONITOR_GET_PRIVATE(o) \
+(G_TYPE_INSTANCE_GET_PRIVATE((o), HAL_TYPE_MONITOR, HalMonitorPrivate))
+
+struct HalMonitorPrivate
+{
+    DBusGConnection *bus;
+    DBusGProxy      *proxy;
+    
+    gboolean         hal_running;
+};
+
+enum
+{
+    CONNECTION_CHANGED,
+    LAST_SIGNAL
+};
+
+static gpointer hal_monitor_object = NULL;
+
+static guint signals[LAST_SIGNAL] = { 0 };
+    
+G_DEFINE_TYPE(HalMonitor, hal_monitor, G_TYPE_OBJECT)
+
+static void
+hal_monitor_get_hal (HalMonitor *monitor)
+{
+    gboolean ret;
+    GError *error = NULL;
+    
+    dbus_g_proxy_call (monitor->priv->proxy, "NameHasOwner", &error,
+		       G_TYPE_STRING, "org.freedesktop.Hal",
+		       G_TYPE_INVALID,
+		       G_TYPE_BOOLEAN, &ret,
+		       G_TYPE_INVALID);
+    
+    if ( error )
+    {
+	g_critical ("%s", error->message);
+	g_error_free (error);
+	return;
+    }
+    
+    if ( ret == FALSE )
+    {
+	g_critical ("Hal is not running");
+	monitor->priv->hal_running = FALSE;
+    }
+    else
+    {
+	monitor->priv->hal_running = TRUE;
+    }
+}
+
+static void
+hal_monitor_name_owner_changed_cb (DBusGProxy *proxy, const gchar *name,
+				   const gchar *prev, const gchar *new,
+				   HalMonitor *monitor)
+{
+    if ( !xfpm_strequal (name, "org.freedesktop.Hal") )
+	return;
+
+    if ( strlen (prev) != 0)
+    {
+	monitor->priv->hal_running = FALSE;
+	g_signal_emit (G_OBJECT (monitor), signals [CONNECTION_CHANGED], 0, FALSE);
+    }
+    else if ( strlen (new) != 0)
+    {
+	monitor->priv->hal_running = TRUE;
+	g_signal_emit (G_OBJECT (monitor), signals [CONNECTION_CHANGED], 0, TRUE);
+    }
+}
+
+
+static void
+hal_monitor_get_dbus (HalMonitor *monitor)
+{
+    monitor->priv->proxy = dbus_g_proxy_new_for_name_owner (monitor->priv->bus,
+							     "org.freedesktop.DBus",
+							     "/org/freedesktop/DBus",
+							     "org.freedesktop.DBus",
+							     NULL);
+    
+    dbus_g_proxy_add_signal (monitor->priv->proxy, "NameOwnerChanged", 
+			     G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INVALID);
+			     
+    dbus_g_proxy_connect_signal (monitor->priv->proxy, "NameOwnerChanged",
+				 G_CALLBACK(hal_monitor_name_owner_changed_cb), monitor, NULL);
+}
+
+static void
+hal_monitor_class_init(HalMonitorClass *klass)
+{
+    GObjectClass *object_class = G_OBJECT_CLASS(klass);
+
+    signals[CONNECTION_CHANGED] =
+    	g_signal_new("connection-changed",
+		     HAL_TYPE_MONITOR,
+		     G_SIGNAL_RUN_LAST,
+		     G_STRUCT_OFFSET(HalMonitorClass, connection_changed),
+		     NULL, NULL,
+		     g_cclosure_marshal_VOID__BOOLEAN,
+		     G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
+
+    object_class->finalize = hal_monitor_finalize;
+
+    g_type_class_add_private (klass, sizeof(HalMonitorPrivate));
+}
+
+static void
+hal_monitor_init (HalMonitor *monitor)
+{
+    GError *error = NULL;
+    
+    monitor->priv = HAL_MONITOR_GET_PRIVATE (monitor);
+    
+    monitor->priv->bus = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
+    
+    if ( error )
+    {
+	g_critical ("error getting system bus connection: %s", error->message);
+	g_error_free (error);
+	goto out;
+    }
+    hal_monitor_get_dbus (monitor);
+    hal_monitor_get_hal  (monitor);
+out:
+    ;
+}
+
+static void
+hal_monitor_finalize(GObject *object)
+{
+    HalMonitor *monitor;
+
+    monitor = HAL_MONITOR(object);
+
+    dbus_g_connection_unref (monitor->priv->bus);
+    
+    if ( monitor->priv->proxy )
+	g_object_unref (monitor->priv->proxy);
+
+    G_OBJECT_CLASS(hal_monitor_parent_class)->finalize(object);
+}
+
+HalMonitor *
+hal_monitor_new (void)
+{
+    if ( hal_monitor_object != NULL )
+    {
+	g_object_ref (hal_monitor_object );
+    }
+    else
+    {
+	hal_monitor_object = g_object_new (HAL_TYPE_MONITOR, NULL);
+	g_object_add_weak_pointer (hal_monitor_object, &hal_monitor_object );
+    }
+    return HAL_MONITOR (hal_monitor_object );
+}
+
+gboolean hal_monitor_get_connected   (HalMonitor *monitor)
+{
+    g_return_val_if_fail (HAL_IS_MONITOR (monitor), FALSE);
+    
+    return monitor->priv->hal_running;
+}

Added: xfce4-power-manager/trunk/libxfpm/hal-monitor.h
===================================================================
--- xfce4-power-manager/trunk/libxfpm/hal-monitor.h	                        (rev 0)
+++ xfce4-power-manager/trunk/libxfpm/hal-monitor.h	2009-03-28 16:19:16 UTC (rev 7018)
@@ -0,0 +1,57 @@
+/*
+ * * Copyright (C) 2009 Ali <aliov at xfce.org>
+ *
+ * Licensed under the GNU General Public License Version 2
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#ifndef __HAL_MONITOR_H
+#define __HAL_MONITOR_H
+
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+#define HAL_TYPE_MONITOR        (hal_monitor_get_type () )
+#define HAL_MONITOR(o)          (G_TYPE_CHECK_INSTANCE_CAST((o), HAL_TYPE_MONITOR, HalMonitor))
+#define HAL_IS_MONITOR(o)       (G_TYPE_CHECK_INSTANCE_TYPE((o), HAL_TYPE_MONITOR))
+
+typedef struct HalMonitorPrivate HalMonitorPrivate;
+
+typedef struct
+{
+    GObject		  parent;
+    HalMonitorPrivate	 *priv;
+	
+} HalMonitor;
+
+typedef struct
+{
+    GObjectClass 	  parent_class;
+    
+    void                  (*connection_changed)	    (HalMonitor *monitor,
+						     gboolean connected);
+    
+} HalMonitorClass;
+
+GType        		  hal_monitor_get_type        (void) G_GNUC_CONST;
+HalMonitor       	 *hal_monitor_new             (void);
+
+gboolean                  hal_monitor_get_connected   (HalMonitor *monitor) G_GNUC_PURE;
+
+G_END_DECLS
+
+#endif /* __HAL_MONITOR_H */

Modified: xfce4-power-manager/trunk/po/POTFILES.in
===================================================================
--- xfce4-power-manager/trunk/po/POTFILES.in	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/po/POTFILES.in	2009-03-28 16:19:16 UTC (rev 7018)
@@ -20,7 +20,6 @@
 src/xfpm-inhibit.c
 src/xfpm-screen-saver.c
 src/xfce4-power-manager.desktop.in
-libxfpm/hal-proxy.c
 libxfpm/hal-battery.c
 libxfpm/hal-device.c
 libxfpm/hal-marshal.c

Modified: xfce4-power-manager/trunk/src/xfpm-battery.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-battery.c	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-battery.c	2009-03-28 16:19:16 UTC (rev 7018)
@@ -41,6 +41,7 @@
 #include "xfpm-string.h"
 #include "xfpm-marshal.h"
 #include "xfpm-enum-types.h"
+#include "xfpm-enum.h"
 #include "xfpm-battery-info.h"
 #include "xfpm-xfconf.h"
 #include "xfpm-config.h"

Modified: xfce4-power-manager/trunk/src/xfpm-cpu.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-cpu.c	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-cpu.c	2009-03-28 16:19:16 UTC (rev 7018)
@@ -70,12 +70,11 @@
 static void
 xfpm_cpu_set_governor (XfpmCpu *cpu, const gchar *governor)
 {
-    GError *error = NULL;
     TRACE("Settings cpu governor to %s", governor);
     
-    if (! hal_iface_set_cpu_governor(cpu->priv->iface, governor, &error))
+    if (! hal_iface_set_cpu_governor(cpu->priv->iface, governor, NULL))
     {
-    	g_critical ("Unable to set CPU governor to %s: %s\n", governor, error->message);
+    	g_critical ("Unable to set CPU governor to %s", governor);
     }
 }
 

Modified: xfce4-power-manager/trunk/src/xfpm-enum-glib.h
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-enum-glib.h	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-enum-glib.h	2009-03-28 16:19:16 UTC (rev 7018)
@@ -38,14 +38,6 @@
 
 typedef enum
 {
-    SHOW_ICON_ALWAYS,
-    SHOW_ICON_WHEN_BATTERY_PRESENT,
-    SHOW_ICON_WHEN_BATTERY_CHARGING_DISCHARGING
-    
-} XfpmShowIcon;
-
-typedef enum
-{
     BATTERY_FULLY_CHARGED,
     BATTERY_NOT_FULLY_CHARGED,
     BATTERY_IS_CHARGING,

Modified: xfce4-power-manager/trunk/src/xfpm-enum.h
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-enum.h	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-enum.h	2009-03-28 16:19:16 UTC (rev 7018)
@@ -40,6 +40,14 @@
 
 typedef enum
 {
+    SHOW_ICON_ALWAYS,
+    SHOW_ICON_WHEN_BATTERY_PRESENT,
+    SHOW_ICON_WHEN_BATTERY_CHARGING_DISCHARGING
+    
+} XfpmShowIcon;
+
+typedef enum
+{
     LID_SWITCH   = (1<<0),
     SLEEP_SWITCH = (1<<1),
     POWER_SWITCH = (1<<2)

Modified: xfce4-power-manager/trunk/src/xfpm-manager.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-manager.c	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-manager.c	2009-03-28 16:19:16 UTC (rev 7018)
@@ -35,13 +35,13 @@
 #include <dbus/dbus-glib.h>
 #include <dbus/dbus-glib-lowlevel.h>
 
+#include "libxfpm/hal-monitor.h"
 #include "libxfpm/xfpm-string.h"
-#include "libxfpm/hal-proxy.h"
 #include "libxfpm/xfpm-dbus.h"
+#include "libxfpm/xfpm-popups.h"
 
 #include "xfpm-manager.h"
 #include "xfpm-engine.h"
-#include "xfpm-manager.h"
 
 /* Init */
 static void xfpm_manager_class_init (XfpmManagerClass *klass);
@@ -51,24 +51,39 @@
 static void xfpm_manager_dbus_class_init (XfpmManagerClass *klass);
 static void xfpm_manager_dbus_init	 (XfpmManager *manager);
 
+static gboolean xfpm_manager_quit (XfpmManager *manager);
+
 #define XFPM_MANAGER_GET_PRIVATE(o) \
 (G_TYPE_INSTANCE_GET_PRIVATE((o), XFPM_TYPE_MANAGER, XfpmManagerPrivate))
 
 struct XfpmManagerPrivate
 {
     XfpmEngine 	    *engine;
-    HalProxy        *hproxy;
     
+    HalMonitor      *monitor;
+    
     DBusGConnection *session_bus;
 };
 
 G_DEFINE_TYPE(XfpmManager, xfpm_manager, G_TYPE_OBJECT)
 
 static void
-xfpm_manager_hal_disconnected_cb (HalProxy *hproxy, XfpmManager *manager)
+xfpm_manager_hal_connection_changed_cb (HalMonitor *monitor, gboolean connected, XfpmManager *manager)
 {
-    TRACE("hald disconnected ");
-    //g_object_unref (manager->priv->engine);
+    TRACE("connected = %s", xfpm_bool_to_string (connected));
+    
+    if ( connected )
+    {
+	if ( manager->priv->engine == NULL)
+	{
+	    manager->priv->engine = xfpm_engine_new ();
+	}
+	else
+	{
+	    xfpm_manager_quit (manager);
+	    g_spawn_command_line_async ("xfce4-power-manager", NULL);
+	}
+    }
 }
 
 static void
@@ -88,7 +103,7 @@
 
     manager->priv->session_bus   = NULL;
     manager->priv->engine        = NULL;
-    manager->priv->hproxy        = NULL;
+    manager->priv->monitor       = NULL;
 }
 
 static void
@@ -104,11 +119,13 @@
     if ( manager->priv->engine )
     	g_object_unref (manager->priv->engine);
 
+    g_object_unref (manager->priv->monitor);
+    
     G_OBJECT_CLASS(xfpm_manager_parent_class)->finalize(object);
 }
 
-static gboolean
-xfpm_manager_quit (XfpmManager *manager)
+static void
+xfpm_manager_release_names (XfpmManager *manager)
 {
     xfpm_dbus_release_name(dbus_g_connection_get_connection(manager->priv->session_bus),
 			   "org.xfce.PowerManager");
@@ -116,26 +133,27 @@
     xfpm_dbus_release_name (dbus_g_connection_get_connection(manager->priv->session_bus),
 			    "org.freedesktop.PowerManagement");
 				  
-    g_object_unref(G_OBJECT(manager));
-    gtk_main_quit ();
-    return TRUE;
+    xfpm_dbus_release_name (dbus_g_connection_get_connection(manager->priv->session_bus),
+			    "org.freedesktop.PowerManagement.Inhibit");
+			    
+    xfpm_dbus_release_name (dbus_g_connection_get_connection(manager->priv->session_bus),
+			    "org.freedesktop.PowerManagement.Backlight");
+    
 }
 
-XfpmManager *
-xfpm_manager_new(DBusGConnection *bus)
+static gboolean
+xfpm_manager_quit (XfpmManager *manager)
 {
-    XfpmManager *manager = NULL;
-    manager = g_object_new(XFPM_TYPE_MANAGER,NULL);
-
-    manager->priv->session_bus = bus;
+    xfpm_manager_release_names (manager);
     
-    xfpm_manager_dbus_class_init(XFPM_MANAGER_GET_CLASS(manager));
-    xfpm_manager_dbus_init(manager);
+    g_object_unref(G_OBJECT(manager));
     
-    return manager;
+    gtk_main_quit ();
+    return TRUE;
 }
 
-void xfpm_manager_start (XfpmManager *manager)
+static void
+xfpm_manager_reserve_names (XfpmManager *manager)
 {
     if ( !xfpm_dbus_register_name (dbus_g_connection_get_connection(manager->priv->session_bus),
 				  "org.xfce.PowerManager") ) 
@@ -163,15 +181,44 @@
     
 	g_critical ("Unable to reserve bus name: Backlight\n");
     }
+}
+
+XfpmManager *
+xfpm_manager_new (DBusGConnection *bus)
+{
+    XfpmManager *manager = NULL;
+    manager = g_object_new(XFPM_TYPE_MANAGER,NULL);
+
+    manager->priv->session_bus = bus;
     
-    manager->priv->hproxy = hal_proxy_new ();
+    xfpm_manager_dbus_class_init (XFPM_MANAGER_GET_CLASS(manager));
+    xfpm_manager_dbus_init (manager);
     
-    g_signal_connect (manager->priv->hproxy, "hal-disconnected",
-		      G_CALLBACK(xfpm_manager_hal_disconnected_cb), manager);
+    return manager;
+}
+
+void xfpm_manager_start (XfpmManager *manager)
+{
+    gboolean hal_running;
     
+    xfpm_manager_reserve_names (manager);
     
+    manager->priv->monitor = hal_monitor_new ();
+    
+    g_signal_connect (manager->priv->monitor, "connection-changed",
+		      G_CALLBACK(xfpm_manager_hal_connection_changed_cb), manager);
+		      
+    hal_running = hal_monitor_get_connected (manager->priv->monitor);
+    
+    if (!hal_running )
+    {
+	xfpm_error (_("Xfce power manager"), _("Hal daemon is not running"));
+	goto out;
+    }
     manager->priv->engine = xfpm_engine_new ();
     
+out:
+	;
 }
 
 /*
@@ -231,9 +278,11 @@
 					       GError **error)
 {
     TRACE("Restart message received");
-    g_object_unref (manager->priv->engine);
-    manager->priv->engine = xfpm_engine_new ();
     
+    xfpm_manager_quit (manager);
+    
+    g_spawn_command_line_async ("xfce4-power-manager", NULL);
+    
     return TRUE;
 }
 

Modified: xfce4-power-manager/trunk/src/xfpm-supply.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-supply.c	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-supply.c	2009-03-28 16:19:16 UTC (rev 7018)
@@ -42,6 +42,7 @@
 #include "xfpm-enum.h"
 #include "xfpm-enum-types.h"
 #include "xfpm-xfconf.h"
+#include "xfpm-tray-icon.h"
 #include "xfpm-config.h"
 #include "xfpm-marshal.h"
 
@@ -58,6 +59,7 @@
     XfpmNotify    *notify;
     XfpmAdapter   *adapter;
     XfpmXfconf    *conf;
+    XfpmTrayIcon  *tray;
     
     HalPower      *power;
     GHashTable    *hash;
@@ -102,13 +104,14 @@
 {
     supply->priv = XFPM_SUPPLY_GET_PRIVATE (supply);
   
-    supply->priv->power   = hal_power_new ();
     supply->priv->hash    = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_object_unref);
-    supply->priv->notify  = xfpm_notify_new ();
-    supply->priv->conf    = xfpm_xfconf_new ();
+     
+    supply->priv->power   = hal_power_new      ();
+    supply->priv->notify  = xfpm_notify_new    ();
+    supply->priv->conf    = xfpm_xfconf_new    ();
+    supply->priv->tray    = xfpm_tray_icon_new ();
 }
 
-
 static void
 xfpm_supply_finalize (GObject *object)
 {
@@ -124,9 +127,26 @@
     g_object_unref (supply->priv->conf);
 	
     g_object_unref (supply->priv->adapter);
+    
+    g_object_unref (supply->priv->tray);
 	
     G_OBJECT_CLASS(xfpm_supply_parent_class)->finalize(object);
 }
+/*
+static void
+xfpm_supply_show_tray_icon (XfpmSupply *supply)
+{
+    guint8 show_icon;
+    
+    show_icon = xfpm_xfconf_get_property_enum (supply->priv->conf, SHOW_TRAY_ICON_CFG);
+    
+    if ( show_icon == SHOW_ICON_ALWAYS && g_hash_table_size (supply->priv->hash) == 0 )
+    {
+	
+    }
+    else if ( sh
+}
+*/
 
 gboolean xfpm_supply_on_low_power (XfpmSupply *supply)
 {

Modified: xfce4-power-manager/trunk/src/xfpm-xfconf.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-xfconf.c	2009-03-28 15:54:48 UTC (rev 7017)
+++ xfce4-power-manager/trunk/src/xfpm-xfconf.c	2009-03-28 16:19:16 UTC (rev 7018)
@@ -35,6 +35,7 @@
 #include "xfpm-xfconf.h"
 #include "xfpm-config.h"
 #include "xfpm-enum-glib.h"
+#include "xfpm-enum.h"
 
 /* Init */
 static void xfpm_xfconf_class_init (XfpmXfconfClass *klass);




More information about the Goodies-commits mailing list