[Goodies-commits] r5636 - xfce4-power-manager/trunk/src
Ali Abdallah
aliov at xfce.org
Wed Oct 15 17:31:05 CEST 2008
Author: aliov
Date: 2008-10-15 15:31:05 +0000 (Wed, 15 Oct 2008)
New Revision: 5636
Modified:
xfce4-power-manager/trunk/src/xfpm-battery.c
xfce4-power-manager/trunk/src/xfpm-driver.c
Log:
fix compilation when libnotify is missing
Modified: xfce4-power-manager/trunk/src/xfpm-battery.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-battery.c 2008-10-15 14:40:18 UTC (rev 5635)
+++ xfce4-power-manager/trunk/src/xfpm-battery.c 2008-10-15 15:31:05 UTC (rev 5636)
@@ -500,6 +500,10 @@
xfpm_battery_refresh(XfpmBattery *batt)
{
xfpm_battery_refresh_tray_icon(batt);
+ xfpm_battery_refresh_critical_charge(batt);
+#ifdef HAVE_LIBNOTIFY
+ xfpm_battery_refresh_notification(batt);
+#endif
}
static void
Modified: xfce4-power-manager/trunk/src/xfpm-driver.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-driver.c 2008-10-15 14:40:18 UTC (rev 5635)
+++ xfce4-power-manager/trunk/src/xfpm-driver.c 2008-10-15 15:31:05 UTC (rev 5636)
@@ -101,6 +101,12 @@
#endif
static gboolean xfpm_driver_do_suspend(gpointer data);
static gboolean xfpm_driver_do_hibernate(gpointer data);
+static gboolean xfpm_driver_do_shutdown(gpointer data);
+
+static void xfpm_driver_suspend(XfpmDriver *drv,gboolean critical);
+static void xfpm_driver_hibernate(XfpmDriver *drv,gboolean critical);
+static void xfpm_driver_shutdown(XfpmDriver *drv,gboolean critical);
+
static void xfpm_driver_handle_action_request(GObject *object,
guint action,
gboolean critical,
@@ -439,13 +445,6 @@
g_object_set(G_OBJECT(priv->bt),"power-switch-action",val,NULL);
return;
}
-
- if ( !strcmp(property,POWER_SAVE_CFG) )
- {
- gboolean val = g_value_get_boolean(value);
- g_object_set(G_OBJECT(priv->batt),"enable-powersave",val,NULL);
- return;
- }
}
}
@@ -562,7 +561,7 @@
{
xfpm_battery_show_error(priv->batt,icon_name,error);
}
-
+
}
#endif
@@ -580,8 +579,10 @@
if ( error )
{
XFPM_DEBUG("error suspend: %s\n",error->message);
+#ifdef HAVE_LIBNOTIFY
if ( critical == 1)
xfpm_driver_report_sleep_errors(drv,"gpm-suspend",error->message);
+#endif
g_error_free(error);
}
@@ -606,8 +607,10 @@
if ( error )
{
XFPM_DEBUG("error hibernate: %s\n",error->message);
+#ifdef HAVE_LIBNOTIFY
if ( critical == 1)
xfpm_driver_report_sleep_errors(drv,"gpm-hibernate",error->message);
+#endif
g_error_free(error);
}
@@ -616,7 +619,48 @@
}
+static gboolean
+xfpm_driver_do_shutdown(gpointer data)
+{
+ XfpmDriver *drv = XFPM_DRIVER(data);
+ XfpmDriverPrivate *priv;
+
+ priv = XFPM_DRIVER_GET_PRIVATE(drv);
+
+ if (!xfpm_hal_shutdown(priv->hal))
+ {
+#ifdef HAVE_LIBNOTIFY
+ xfpm_driver_report_sleep_errors(drv,"gpm-hibernate",_("System failed to shutdown"));
+#endif
+ }
+
+ priv->accept_sleep_request = TRUE;
+ return FALSE;
+}
+
static void
+xfpm_driver_hibernate(XfpmDriver *drv,gboolean critical)
+{
+ xfpm_lock_screen();
+ g_timeout_add_seconds(2,(GSourceFunc)xfpm_driver_do_hibernate,drv);
+}
+
+static void
+xfpm_driver_suspend(XfpmDriver *drv,gboolean critical)
+{
+ xfpm_lock_screen();
+ g_timeout_add_seconds(2,(GSourceFunc)xfpm_driver_do_suspend,drv);
+}
+
+static void
+xfpm_driver_shutdown(XfpmDriver *drv,gboolean critical)
+{
+ g_timeout_add(100,(GSourceFunc)xfpm_driver_do_shutdown,drv);
+}
+
+/* Currently the critical variable is ignored */
+
+static void
xfpm_driver_handle_action_request(GObject *object,XfpmActionRequest action,
gboolean critical,XfpmDriver *drv)
{
@@ -650,14 +694,13 @@
switch ( action )
{
case XFPM_DO_SUSPEND:
- //xfpm_lock_screen();
- g_timeout_add_seconds(2,(GSourceFunc)xfpm_driver_do_suspend,drv);
+ xfpm_driver_suspend(drv,critical);
break;
case XFPM_DO_HIBERNATE:
- //xfpm_lock_screen();
- g_timeout_add_seconds(2,(GSourceFunc)xfpm_driver_do_hibernate,drv);
+ xfpm_driver_hibernate(drv,critical);
break;
case XFPM_DO_SHUTDOWN:
+ xfpm_driver_shutdown(drv,critical);
break;
default:
break;
More information about the Goodies-commits
mailing list