[Goodies-commits] r7010 - in xfce4-power-manager/trunk: . libxfpm src
Ali Abdallah
aliov at xfce.org
Sat Mar 28 14:48:03 CET 2009
Author: aliov
Date: 2009-03-28 13:48:02 +0000 (Sat, 28 Mar 2009)
New Revision: 7010
Modified:
xfce4-power-manager/trunk/ChangeLog
xfce4-power-manager/trunk/libxfpm/hal-iface.c
xfce4-power-manager/trunk/src/xfpm-battery.c
xfce4-power-manager/trunk/src/xfpm-battery.h
xfce4-power-manager/trunk/src/xfpm-engine.c
xfce4-power-manager/trunk/src/xfpm-supply.c
xfce4-power-manager/trunk/src/xfpm-tray-icon.c
xfce4-power-manager/trunk/src/xfpm-tray-icon.h
xfce4-power-manager/trunk/src/xfpm-xfconf.c
Log:
Move the context menu to xfpm-tray-icon
Modified: xfce4-power-manager/trunk/ChangeLog
===================================================================
--- xfce4-power-manager/trunk/ChangeLog 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/ChangeLog 2009-03-28 13:48:02 UTC (rev 7010)
@@ -1,4 +1,7 @@
+2009-03-28 14:47 Ali aliov at xfce.org
+ * : Move the context menu to xfpm-tray-icon
+
2009-03-27 15:37 Ali aliov at xfce.org
* : Move the configuration loading to xfpm-xfconf
Modified: xfce4-power-manager/trunk/libxfpm/hal-iface.c
===================================================================
--- xfce4-power-manager/trunk/libxfpm/hal-iface.c 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/libxfpm/hal-iface.c 2009-03-28 13:48:02 UTC (rev 7010)
@@ -75,7 +75,88 @@
G_DEFINE_TYPE(HalIface, hal_iface, G_TYPE_OBJECT)
+
+static gboolean
+hal_iface_check_interface (HalIface *iface, const gchar *interface)
+{
+ DBusMessage *message;
+ DBusMessage *reply;
+ DBusError error ;
+
+ message = dbus_message_new_method_call ("org.freedesktop.Hal",
+ "/org/freedesktop/Hal",
+ interface,
+ "JustToCheck");
+
+ if (!message)
+ return FALSE;
+
+ dbus_error_init (&error);
+
+ reply =
+ dbus_connection_send_with_reply_and_block (dbus_g_connection_get_connection(iface->priv->bus),
+ message, 2000, &error);
+ dbus_message_unref (message);
+
+ if ( reply ) dbus_message_unref (reply);
+
+ if ( dbus_error_is_set(&error) )
+ {
+ if (!xfpm_strcmp(error.name,"org.freedesktop.DBus.Error.UnknownMethod"))
+ {
+ dbus_error_free(&error);
+ return TRUE;
+ }
+ }
+
+ return FALSE;
+}
+
+static gboolean
+get_property_bool (HalIface *iface, const gchar *property)
+{
+ GError *error = NULL;
+ gboolean ret;
+ DBusGProxy *proxy = dbus_g_proxy_new_for_name (iface->priv->bus,
+ "org.freedesktop.Hal",
+ "/org/freedesktop/Hal/devices/computer",
+ "org.freedesktop.Hal.Device");
+ dbus_g_proxy_call (proxy, "GetPropertyBoolean", &error,
+ G_TYPE_STRING, property,
+ G_TYPE_INVALID,
+ G_TYPE_BOOLEAN, &ret,
+ G_TYPE_INVALID);
+
+ if ( error )
+ {
+ g_critical ("Unable to get bool property: %s\n", error->message);
+ g_error_free (error);
+ }
+
+ g_object_unref (proxy);
+
+ return ret;
+}
+
static void
+hal_iface_power_management_check (HalIface *iface)
+{
+ iface->priv->caller_privilege =
+ hal_iface_check_interface (iface, "org.freedesktop.Hal.Device.SystemPowerManagement");
+
+ iface->priv->can_suspend = get_property_bool (iface, "power_management.can_suspend");
+ iface->priv->can_hibernate = get_property_bool (iface, "power_management.can_hibernate");
+}
+
+static void
+hal_iface_cpu_check (HalIface *iface)
+{
+ iface->priv->cpu_freq_iface_can_be_used =
+ hal_iface_check_interface (iface, "org.freedesktop.Hal.Device.CPUFreq");
+}
+
+
+static void
hal_iface_class_init(HalIfaceClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS(klass);
@@ -118,6 +199,8 @@
static void
hal_iface_init(HalIface *iface)
{
+ GError *error = NULL;
+
iface->priv = HAL_IFACE_GET_PRIVATE(iface);
iface->priv->bus = NULL;
@@ -126,6 +209,19 @@
iface->priv->can_hibernate = FALSE;
iface->priv->caller_privilege = FALSE;
iface->priv->cpu_freq_iface_can_be_used = FALSE;
+
+ iface->priv->bus = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
+
+ if ( error )
+ {
+ g_critical ("Unable to get system bus %s.", error->message);
+ g_error_free (error);
+ return;
+ }
+
+ iface->priv->connected = TRUE;
+ hal_iface_power_management_check (iface);
+ hal_iface_cpu_check (iface);
}
static void hal_iface_get_property(GObject *object,
@@ -182,105 +278,12 @@
return HAL_IFACE (hal_iface_object);
}
-static gboolean
-hal_iface_check_interface (HalIface *iface, const gchar *interface)
-{
- DBusMessage *message;
- DBusMessage *reply;
- DBusError error ;
-
- message = dbus_message_new_method_call ("org.freedesktop.Hal",
- "/org/freedesktop/Hal",
- interface,
- "JustToCheck");
-
- if (!message)
- return FALSE;
-
- dbus_error_init (&error);
-
- reply =
- dbus_connection_send_with_reply_and_block (dbus_g_connection_get_connection(iface->priv->bus),
- message, 2000, &error);
- dbus_message_unref (message);
-
- if ( reply ) dbus_message_unref (reply);
-
- if ( dbus_error_is_set(&error) )
- {
- if (!xfpm_strcmp(error.name,"org.freedesktop.DBus.Error.UnknownMethod"))
- {
- dbus_error_free(&error);
- return TRUE;
- }
- }
-
- return FALSE;
-}
-
-static gboolean
-get_property_bool (HalIface *iface, const gchar *property)
-{
- GError *error = NULL;
- gboolean ret;
- DBusGProxy *proxy = dbus_g_proxy_new_for_name (iface->priv->bus,
- "org.freedesktop.Hal",
- "/org/freedesktop/Hal/devices/computer",
- "org.freedesktop.Hal.Device");
- dbus_g_proxy_call (proxy, "GetPropertyBoolean", &error,
- G_TYPE_STRING, property,
- G_TYPE_INVALID,
- G_TYPE_BOOLEAN, &ret,
- G_TYPE_INVALID);
-
- if ( error )
- {
- g_critical ("Unable to get bool property: %s\n", error->message);
- g_error_free (error);
- }
-
- g_object_unref (proxy);
-
- return ret;
-}
-
-static void
-hal_iface_power_management_check (HalIface *iface)
-{
- iface->priv->caller_privilege =
- hal_iface_check_interface (iface, "org.freedesktop.Hal.Device.SystemPowerManagement");
-
- iface->priv->can_suspend = get_property_bool (iface, "power_management.can_suspend");
- iface->priv->can_hibernate = get_property_bool (iface, "power_management.can_hibernate");
-}
-
-static void
-hal_iface_cpu_check (HalIface *iface)
-{
- iface->priv->cpu_freq_iface_can_be_used =
- hal_iface_check_interface (iface, "org.freedesktop.Hal.Device.CPUFreq");
-}
-
gboolean
hal_iface_connect (HalIface *iface)
{
g_return_val_if_fail (HAL_IS_IFACE (iface), FALSE);
- GError *error = NULL;
-
- iface->priv->bus = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error);
-
- if ( error )
- {
- g_critical ("Unable to get system bus %s.", error->message);
- g_error_free (error);
- return FALSE;
- }
-
- iface->priv->connected = TRUE;
- hal_iface_power_management_check (iface);
- hal_iface_cpu_check (iface);
-
+
return TRUE;
}
Modified: xfce4-power-manager/trunk/src/xfpm-battery.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-battery.c 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-battery.c 2009-03-28 13:48:02 UTC (rev 7010)
@@ -34,6 +34,7 @@
#include <libxfce4util/libxfce4util.h>
#include "libxfpm/xfpm-string.h"
+#include "libxfpm/xfpm-notify.h"
#include "xfpm-battery.h"
#include "xfpm-tray-icon.h"
@@ -59,19 +60,18 @@
XfpmAdapter *adapter;
HalBattery *device;
XfpmXfconf *conf;
+ XfpmNotify *notify;
HalDeviceType type;
gchar *icon_prefix;
gboolean adapter_present;
XfpmBatteryState state;
-
};
enum
{
BATTERY_STATE_CHANGED,
- POPUP_BATTERY_MENU,
LAST_SIGNAL
};
@@ -96,6 +96,28 @@
return "100";
}
+static const gchar *
+xfpm_battery_get_message_from_battery_state (XfpmBatteryState state, gboolean adapter_present)
+{
+ switch (state)
+ {
+ case BATTERY_FULLY_CHARGED:
+ return _("Your battery is fully charged");
+ break;
+ case BATTERY_IS_CHARGING:
+ return _("Battery is charging");
+ break;
+ case BATTERY_IS_DISCHARGING:
+ return adapter_present ? _("Your battery is discharging"): _("System is running on battery power");
+ break;
+ case BATTERY_CHARGE_LOW:
+ return adapter_present ? _("Your battery charge is low") : _("System is running on low power");
+ break;
+ default:
+ return NULL;
+ }
+}
+
static void
xfpm_battery_refresh_visible_icon (XfpmBattery *battery)
{
@@ -178,9 +200,24 @@
static void
xfpm_battery_refresh_state (XfpmBattery *battery, XfpmBatteryState state)
{
+ const gchar *message;
+
if ( battery->priv->state != state)
{
battery->priv->state = state;
+ message = xfpm_battery_get_message_from_battery_state (state, battery->priv->adapter_present );
+ if ( !message )
+ goto signal;
+ xfpm_notify_show_notification (battery->priv->notify,
+ _("Xfce power manager"),
+ message,
+ xfpm_tray_icon_get_icon_name (battery->priv->icon),
+ 10000,
+ battery->priv->type == HAL_DEVICE_TYPE_PRIMARY ? FALSE : TRUE,
+ XFPM_NOTIFY_NORMAL,
+ xfpm_tray_icon_get_tray_icon(battery->priv->icon));
+
+signal:
g_signal_emit (G_OBJECT(battery), signals[BATTERY_STATE_CHANGED], 0, state);
TRACE("Emitting signal battery state changed");
}
@@ -423,13 +460,6 @@
}
static void
-xfpm_battery_popup_menu_cb (GtkStatusIcon *icon, guint button, guint activate_time, XfpmBattery *battery)
-{
- g_signal_emit (G_OBJECT(battery), signals[POPUP_BATTERY_MENU], 0,
- icon, button, activate_time, battery->priv->type);
-}
-
-static void
xfpm_battery_adapter_changed_cb (XfpmAdapter *adapter, gboolean present, XfpmBattery *battery)
{
battery->priv->adapter_present = present;
@@ -443,6 +473,20 @@
}
static void
+xfpm_battery_show_info (XfpmTrayIcon *tray, XfpmBattery *battery)
+{
+ gchar *icon = g_strdup_printf("%s%s",
+ battery->priv->icon_prefix,
+ xfpm_battery_get_icon_index(battery->priv->type, 100));
+
+ GtkWidget *info = xfpm_battery_info_new (battery->priv->device, icon);
+
+ g_free (icon);
+
+ gtk_widget_show_all (info);
+}
+
+static void
xfpm_battery_class_init(XfpmBatteryClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS(klass);
@@ -456,19 +500,6 @@
g_cclosure_marshal_VOID__ENUM,
G_TYPE_NONE, 1, XFPM_TYPE_BATTERY_STATE);
- signals[POPUP_BATTERY_MENU] =
- g_signal_new("popup-battery-menu",
- XFPM_TYPE_BATTERY,
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET(XfpmBatteryClass, popup_battery_menu),
- NULL, NULL,
- _xfpm_marshal_VOID__POINTER_UINT_UINT_UINT,
- G_TYPE_NONE, 4,
- GTK_TYPE_STATUS_ICON,
- G_TYPE_UINT,
- G_TYPE_UINT,
- G_TYPE_UINT);
-
object_class->finalize = xfpm_battery_finalize;
g_type_class_add_private(klass,sizeof(XfpmBatteryPrivate));
@@ -482,11 +513,15 @@
battery->priv->icon = xfpm_tray_icon_new ();
battery->priv->adapter = xfpm_adapter_new ();
battery->priv->conf = xfpm_xfconf_new ();
+ battery->priv->notify = xfpm_notify_new ();
battery->priv->adapter_present = xfpm_adapter_get_present (battery->priv->adapter);
g_signal_connect (battery->priv->adapter ,"adapter-changed",
- G_CALLBACK(xfpm_battery_adapter_changed_cb), battery);
+ G_CALLBACK (xfpm_battery_adapter_changed_cb), battery);
+
+ g_signal_connect (battery->priv->icon, "show-information",
+ G_CALLBACK (xfpm_battery_show_info), battery);
}
static void
@@ -505,6 +540,8 @@
g_object_unref (battery->priv->adapter);
g_object_unref (battery->priv->conf);
+
+ g_object_unref (battery->priv->notify);
G_OBJECT_CLASS(xfpm_battery_parent_class)->finalize(object);
}
@@ -527,9 +564,6 @@
g_signal_connect (G_OBJECT(battery->priv->device), "battery-changed",
G_CALLBACK(xfpm_battery_device_changed_cb), battery);
- g_signal_connect (G_OBJECT(xfpm_tray_icon_get_tray_icon(battery->priv->icon)), "popup-menu",
- G_CALLBACK(xfpm_battery_popup_menu_cb), battery);
-
g_signal_connect (G_OBJECT(battery->priv->conf), "tray-icon-settings-changed",
G_CALLBACK(xfpm_battery_tray_icon_settings_changed), battery);
@@ -566,18 +600,3 @@
return xfpm_tray_icon_get_icon_name (battery->priv->icon);
}
-
-void xfpm_battery_show_info (XfpmBattery *battery)
-{
- g_return_if_fail (XFPM_IS_BATTERY(battery));
-
- gchar *icon = g_strdup_printf("%s%s",
- battery->priv->icon_prefix,
- xfpm_battery_get_icon_index(battery->priv->type, 100));
-
- GtkWidget *info = xfpm_battery_info_new (battery->priv->device, icon);
-
- g_free (icon);
-
- gtk_widget_show_all (info);
-}
Modified: xfce4-power-manager/trunk/src/xfpm-battery.h
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-battery.h 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-battery.h 2009-03-28 13:48:02 UTC (rev 7010)
@@ -50,12 +50,6 @@
void (*battery_state_changed) (XfpmBattery *battery,
XfpmBatteryState state);
-
- void (*popup_battery_menu) (XfpmBattery *battery,
- GtkStatusIcon *icon,
- guint button,
- guint activate_time,
- guint type);
} XfpmBatteryClass;
@@ -70,8 +64,6 @@
const gchar *xfpm_battery_get_icon_name (XfpmBattery *battery);
-void xfpm_battery_show_info (XfpmBattery *battery);
-
G_END_DECLS
#endif /* __XFPM_BATTERY_H */
Modified: xfce4-power-manager/trunk/src/xfpm-engine.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-engine.c 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-engine.c 2009-03-28 13:48:02 UTC (rev 7010)
@@ -134,6 +134,7 @@
g_warning ("%s", error->message);
g_error_free (error);
}
+
xfpm_send_message_to_network_manager ("wake");
engine->priv->block_shutdown = FALSE;
return FALSE;
@@ -181,12 +182,12 @@
}
else if (shutdown == XFPM_DO_HIBERNATE)
{
- g_timeout_add_seconds (3, (GSourceFunc) xfpm_engine_do_hibernate,
+ g_timeout_add_seconds (4, (GSourceFunc) xfpm_engine_do_hibernate,
engine);
}
else if (shutdown == XFPM_DO_SUSPEND)
{
- g_timeout_add_seconds (3, (GSourceFunc) xfpm_engine_do_suspend,
+ g_timeout_add_seconds (4, (GSourceFunc) xfpm_engine_do_suspend,
engine);
}
@@ -412,8 +413,7 @@
engine = XFPM_ENGINE (object);
- if (engine->priv->conf)
- g_object_unref (engine->priv->conf);
+ g_object_unref (engine->priv->conf);
if (engine->priv->supply)
g_object_unref (engine->priv->supply);
Modified: xfce4-power-manager/trunk/src/xfpm-supply.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-supply.c 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-supply.c 2009-03-28 13:48:02 UTC (rev 7010)
@@ -115,80 +115,21 @@
XfpmSupply *supply;
supply = XFPM_SUPPLY(object);
- if ( supply->priv->power )
- g_object_unref(supply->priv->power);
+ g_object_unref(supply->priv->power);
g_hash_table_destroy (supply->priv->hash);
- if ( supply->priv->notify )
- g_object_unref (supply->priv->notify);
+ g_object_unref (supply->priv->notify);
- if ( supply->priv->conf )
- g_object_unref (supply->priv->conf);
+ g_object_unref (supply->priv->conf);
- if ( supply->priv->adapter )
- g_object_unref (supply->priv->adapter);
+ g_object_unref (supply->priv->adapter);
G_OBJECT_CLASS(xfpm_supply_parent_class)->finalize(object);
}
-static void
-xfpm_supply_hibernate_cb (GtkWidget *w, XfpmSupply *supply)
+gboolean xfpm_supply_on_low_power (XfpmSupply *supply)
{
- gboolean ret =
- xfce_confirm (_("Are you sure you want to hibernate the system?"),
- GTK_STOCK_YES,
- _("Hibernate"));
-
- if ( ret )
- {
- g_signal_emit (G_OBJECT(supply ), signals[SHUTDOWN_REQUEST], 0, FALSE, XFPM_DO_HIBERNATE);
- }
-}
-
-static void
-xfpm_supply_suspend_cb (GtkWidget *w, XfpmSupply *supply)
-{
- gboolean ret =
- xfce_confirm (_("Are you sure you want to suspend the system?"),
- GTK_STOCK_YES,
- _("Suspend"));
-
- if ( ret )
- {
- g_signal_emit (G_OBJECT(supply ), signals[SHUTDOWN_REQUEST], 0, FALSE, XFPM_DO_SUSPEND);
- }
-}
-
-//FIXME: more types
-static const gchar *
-_get_icon_name_from_battery_type (HalDeviceType type)
-{
- switch (type)
- {
- case HAL_DEVICE_TYPE_PRIMARY:
- return "gpm-primary-charged";
- break;
- case HAL_DEVICE_TYPE_UPS:
- return "gpm-ups-charged";
- break;
- case HAL_DEVICE_TYPE_MOUSE:
- return "gpm-mouse-100";
- break;
- case HAL_DEVICE_TYPE_KEYBOARD:
- return "gpm-keyboard-100";
- break;
- case HAL_DEVICE_TYPE_PDA:
- return "gpm-phone-100";
- break;
- default:
- return "gpm-primary-charged";
- break;
- }
-}
-
-gboolean xfpm_supply_on_low_power ( XfpmSupply *supply)
-{
GList *list = NULL;
int i;
gboolean low_power = FALSE;
@@ -220,28 +161,6 @@
return low_power;
}
-static const gchar *
-xfpm_supply_get_message_from_battery_state (XfpmBatteryState state, gboolean adapter_present)
-{
- switch (state)
- {
- case BATTERY_FULLY_CHARGED:
- return _("Your battery is fully charged");
- break;
- case BATTERY_IS_CHARGING:
- return _("Battery is charging");
- break;
- case BATTERY_IS_DISCHARGING:
- return adapter_present ? _("Your battery is discharging"): _("System is running on battery power");
- break;
- case BATTERY_CHARGE_LOW:
- return adapter_present ? _("Your battery charge is low") : _("System is running on low power");
- break;
- default:
- return NULL;
- }
-}
-
static void
xfpm_supply_process_critical_action (XfpmSupply *supply)
{
@@ -337,177 +256,21 @@
}
static void
-xfpm_supply_primary_battery_changed (XfpmSupply *supply, XfpmBattery *battery, XfpmBatteryState state)
+xfpm_supply_primary_critical (XfpmSupply *supply, XfpmBattery *battery, XfpmBatteryState state)
{
if ( state == BATTERY_CHARGE_CRITICAL )
{
xfpm_supply_handle_primary_critical (supply, battery);
- return;
}
-
- const gchar *message
- = xfpm_supply_get_message_from_battery_state (state, supply->priv->adapter_present);
-
- if ( !message )
- return;
-
- xfpm_notify_show_notification (supply->priv->notify,
- _("Xfce power manager"),
- message,
- xfpm_battery_get_icon_name (battery),
- 10000,
- FALSE,
- XFPM_NOTIFY_NORMAL,
- xfpm_battery_get_status_icon (battery));
}
static void
-xfpm_supply_misc_battery_changed (XfpmSupply *supply, XfpmBattery *battery, XfpmBatteryState state)
-{
- const gchar *message
- = xfpm_supply_get_message_from_battery_state (state, TRUE);
-
- if ( !message )
- return;
-
- xfpm_notify_show_notification (supply->priv->notify,
- _("Xfce power manager"),
- message,
- xfpm_battery_get_icon_name (battery),
- 10000,
- TRUE,
- XFPM_NOTIFY_NORMAL,
- xfpm_battery_get_status_icon (battery));
-}
-
-static void
-xfpm_supply_show_battery_notification (XfpmSupply *supply, XfpmBatteryState state, XfpmBattery *battery)
-{
- HalDeviceType type;
- const HalBattery *device = xfpm_battery_get_device (battery);
-
- if ( device )
- g_object_get (G_OBJECT(device), "type", &type, NULL);
- else
- {
- g_critical ("Unable to get device type");
- return;
- }
-
- if ( type == HAL_DEVICE_TYPE_PRIMARY )
- {
- xfpm_supply_primary_battery_changed (supply, battery, state);
- }
- else
- {
- xfpm_supply_misc_battery_changed (supply, battery, state);
- }
-}
-
-static void
xfpm_supply_battery_state_changed_cb (XfpmBattery *battery, XfpmBatteryState state, XfpmSupply *supply)
{
- xfpm_supply_show_battery_notification (supply, state, battery);
+ if ( state == BATTERY_CHARGE_CRITICAL )
+ xfpm_supply_primary_critical (supply, battery, state);
}
-static void
-xfpm_supply_show_battery_info (GtkWidget *w, XfpmBattery *battery)
-{
- xfpm_battery_show_info (battery);
-}
-
-static void
-xfpm_supply_popup_battery_menu_cb (XfpmBattery *battery, GtkStatusIcon *icon,
- guint button, guint activate_time,
- guint battery_type, XfpmSupply *supply)
-{
- GtkWidget *menu, *mi, *img;
-
- menu = gtk_menu_new();
-
- // Hibernate menu option
- mi = gtk_image_menu_item_new_with_label(_("Hibernate"));
- img = gtk_image_new_from_icon_name("gpm-hibernate",GTK_ICON_SIZE_MENU);
- gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi),img);
- gtk_widget_set_sensitive(mi,FALSE);
-
- if ( supply->priv->power_management & SYSTEM_CAN_HIBERNATE )
- {
- gtk_widget_set_sensitive (mi, TRUE);
- g_signal_connect (G_OBJECT(mi), "activate",
- G_CALLBACK(xfpm_supply_hibernate_cb), supply);
- }
- gtk_widget_show(mi);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- // Suspend menu option
- mi = gtk_image_menu_item_new_with_label(_("Suspend"));
- img = gtk_image_new_from_icon_name("gpm-suspend",GTK_ICON_SIZE_MENU);
- gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi),img);
-
- gtk_widget_set_sensitive(mi,FALSE);
- if ( supply->priv->power_management & SYSTEM_CAN_SUSPEND )
- {
- gtk_widget_set_sensitive (mi,TRUE);
- g_signal_connect(mi,"activate",
- G_CALLBACK(xfpm_supply_suspend_cb),
- supply);
- }
- gtk_widget_show(mi);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- // Separator
- mi = gtk_separator_menu_item_new();
- gtk_widget_show(mi);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- // Battery informations
- mi = gtk_image_menu_item_new_with_label (_("Information"));
- img = gtk_image_new_from_icon_name (_get_icon_name_from_battery_type(battery_type), GTK_ICON_SIZE_MENU);
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM(mi), img);
-
- gtk_widget_set_sensitive(mi,FALSE);
- gtk_widget_set_sensitive (mi,TRUE);
-
- g_signal_connect(mi,"activate",
- G_CALLBACK(xfpm_supply_show_battery_info),
- battery);
-
- gtk_widget_show(mi);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- // Separator
- mi = gtk_separator_menu_item_new();
- gtk_widget_show(mi);
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- mi = gtk_image_menu_item_new_from_stock(GTK_STOCK_HELP,NULL);
- gtk_widget_set_sensitive(mi,TRUE);
- gtk_widget_show(mi);
- g_signal_connect(mi,"activate",G_CALLBACK(xfpm_help),NULL);
-
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- mi = gtk_image_menu_item_new_from_stock(GTK_STOCK_ABOUT,NULL);
- gtk_widget_set_sensitive(mi,TRUE);
- gtk_widget_show(mi);
- g_signal_connect(mi,"activate",G_CALLBACK(xfpm_about), _("Xfce Power Manager"));
-
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- mi = gtk_image_menu_item_new_from_stock(GTK_STOCK_PREFERENCES,NULL);
- gtk_widget_set_sensitive(mi,TRUE);
- gtk_widget_show(mi);
- g_signal_connect(mi,"activate",G_CALLBACK(xfpm_preferences),NULL);
-
- gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
-
- // Popup the menu
- gtk_menu_popup(GTK_MENU(menu), NULL, NULL,
- gtk_status_icon_position_menu,
- icon, button, activate_time);
-}
-
static XfpmBattery *
xfpm_supply_get_battery (XfpmSupply *supply, const gchar *udi)
{
@@ -532,9 +295,6 @@
g_signal_connect (G_OBJECT(battery), "battery-state-changed",
G_CALLBACK(xfpm_supply_battery_state_changed_cb), supply);
- g_signal_connect (G_OBJECT(battery), "popup-battery-menu",
- G_CALLBACK(xfpm_supply_popup_battery_menu_cb), supply);
-
}
static void
@@ -549,7 +309,7 @@
TRACE("Removing battery %s", udi);
g_object_unref(battery);
if (!g_hash_table_remove(supply->priv->hash, udi))
- g_critical ("Unable to removed battery object from hash");
+ g_critical ("Unable to remove battery object from hash");
}
}
Modified: xfce4-power-manager/trunk/src/xfpm-tray-icon.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-tray-icon.c 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-tray-icon.c 2009-03-28 13:48:02 UTC (rev 7010)
@@ -33,9 +33,13 @@
#include <libxfcegui4/libxfcegui4.h>
#include "libxfpm/xfpm-common.h"
+#include "libxfpm/hal-iface.h"
+#include "libxfpm/xfpm-string.h"
#include "xfpm-tray-icon.h"
-#include "xfpm-string.h"
+#include "xfpm-network-manager.h"
+#include "xfpm-xfconf.h"
+#include "xfpm-config.h"
/* Init */
static void xfpm_tray_icon_class_init (XfpmTrayIconClass *klass);
@@ -47,10 +51,20 @@
struct XfpmTrayIconPrivate
{
+ HalIface *iface;
+ XfpmXfconf *conf;
GtkStatusIcon *icon;
- GQuark icon_quark;
+ GQuark icon_quark;
};
+enum
+{
+ SHOW_INFORMATION,
+ LAST_SIGNAL
+};
+
+static guint signals[LAST_SIGNAL] = { 0 };
+
G_DEFINE_TYPE(XfpmTrayIcon, xfpm_tray_icon, G_TYPE_OBJECT)
static gboolean
@@ -71,15 +85,193 @@
g_object_unref (pix);
return TRUE;
}
-
return FALSE;
}
static void
+xfpm_tray_info (GtkWidget *w, XfpmTrayIcon *tray)
+{
+ g_signal_emit (G_OBJECT (tray), signals[SHOW_INFORMATION], 0);
+}
+
+static gboolean
+xfpm_tray_icon_do_suspend (XfpmTrayIcon *tray)
+{
+ GError *error = NULL;
+
+ hal_iface_shutdown (tray->priv->iface, "Suspend", &error);
+
+ if (error)
+ {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ }
+ return FALSE;
+}
+
+static gboolean
+xfpm_tray_icon_do_hibernate (XfpmTrayIcon *tray)
+{
+ GError *error = NULL;
+
+ hal_iface_shutdown (tray->priv->iface, "Hibernate", &error);
+
+ if (error)
+ {
+ g_warning ("%s", error->message);
+ g_error_free (error);
+ }
+ return FALSE;
+}
+
+static void
+xfpm_tray_icon_hibernate_cb (GtkWidget *w, XfpmTrayIcon *tray)
+{
+ gboolean lock_screen;
+ gboolean ret =
+ xfce_confirm (_("Are you sure you want to hibernate the system?"),
+ GTK_STOCK_YES,
+ _("Hibernate"));
+
+ if ( ret )
+ {
+ lock_screen = xfpm_xfconf_get_property_bool (tray->priv->conf, LOCK_SCREEN_ON_SLEEP);
+ if ( lock_screen )
+ xfpm_lock_screen ();
+ g_timeout_add_seconds (4, (GSourceFunc) xfpm_tray_icon_do_hibernate, tray);
+ xfpm_send_message_to_network_manager ("sleep");
+ }
+}
+
+static void
+xfpm_tray_icon_suspend_cb (GtkWidget *w, XfpmTrayIcon *tray)
+{
+ gboolean lock_screen;
+ gboolean ret =
+ xfce_confirm (_("Are you sure you want to suspend the system?"),
+ GTK_STOCK_YES,
+ _("Suspend"));
+
+ if ( ret )
+ {
+ lock_screen = xfpm_xfconf_get_property_bool (tray->priv->conf, LOCK_SCREEN_ON_SLEEP);
+ if ( lock_screen )
+ xfpm_lock_screen ();
+ g_timeout_add_seconds (4, (GSourceFunc) xfpm_tray_icon_do_suspend, tray);
+ xfpm_send_message_to_network_manager ("sleep");
+ }
+}
+
+static void
+xfpm_tray_icon_popup_menu_cb (GtkStatusIcon *icon, guint button,
+ guint activate_time, XfpmTrayIcon *tray)
+{
+
+ GtkWidget *menu, *mi, *img;
+ menu = gtk_menu_new();
+ gboolean can_suspend, can_hibernate, caller;
+
+ g_object_get (G_OBJECT (tray->priv->iface),
+ "caller-privilege", &caller,
+ "can-suspend", &can_suspend,
+ "can-hibernate", &can_hibernate,
+ NULL);
+
+ // Hibernate menu option
+ mi = gtk_image_menu_item_new_with_label(_("Hibernate"));
+ img = gtk_image_new_from_icon_name("gpm-hibernate",GTK_ICON_SIZE_MENU);
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi),img);
+ gtk_widget_set_sensitive(mi,FALSE);
+
+ if ( caller && can_hibernate )
+ {
+ gtk_widget_set_sensitive (mi, TRUE);
+ g_signal_connect (G_OBJECT(mi), "activate",
+ G_CALLBACK(xfpm_tray_icon_hibernate_cb), tray);
+ }
+ gtk_widget_show(mi);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ // Suspend menu option
+ mi = gtk_image_menu_item_new_with_label(_("Suspend"));
+ img = gtk_image_new_from_icon_name("gpm-suspend",GTK_ICON_SIZE_MENU);
+ gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(mi),img);
+
+ gtk_widget_set_sensitive(mi,FALSE);
+ if ( caller && can_suspend )
+ {
+ gtk_widget_set_sensitive (mi,TRUE);
+ g_signal_connect (mi, "activate",
+ G_CALLBACK (xfpm_tray_icon_suspend_cb), tray);
+ }
+ gtk_widget_show(mi);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ // Separator
+ mi = gtk_separator_menu_item_new();
+ gtk_widget_show(mi);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ // Battery informations
+ mi = gtk_image_menu_item_new_with_label (_("Information"));
+ img = gtk_image_new_from_stock (GTK_STOCK_INFO, GTK_ICON_SIZE_MENU);
+ gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM(mi), img);
+
+ gtk_widget_set_sensitive(mi,FALSE);
+ gtk_widget_set_sensitive (mi,TRUE);
+
+ g_signal_connect(mi,"activate",
+ G_CALLBACK(xfpm_tray_info), tray);
+
+ gtk_widget_show(mi);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ // Separator
+ mi = gtk_separator_menu_item_new();
+ gtk_widget_show(mi);
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ mi = gtk_image_menu_item_new_from_stock(GTK_STOCK_HELP,NULL);
+ gtk_widget_set_sensitive(mi,TRUE);
+ gtk_widget_show(mi);
+ g_signal_connect(mi,"activate",G_CALLBACK(xfpm_help),NULL);
+
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ mi = gtk_image_menu_item_new_from_stock(GTK_STOCK_ABOUT,NULL);
+ gtk_widget_set_sensitive(mi,TRUE);
+ gtk_widget_show(mi);
+ g_signal_connect(mi,"activate",G_CALLBACK(xfpm_about), _("Xfce Power Manager"));
+
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ mi = gtk_image_menu_item_new_from_stock(GTK_STOCK_PREFERENCES,NULL);
+ gtk_widget_set_sensitive(mi,TRUE);
+ gtk_widget_show(mi);
+ g_signal_connect(mi,"activate",G_CALLBACK(xfpm_preferences),NULL);
+
+ gtk_menu_shell_append(GTK_MENU_SHELL(menu),mi);
+
+ // Popup the menu
+ gtk_menu_popup(GTK_MENU(menu), NULL, NULL,
+ gtk_status_icon_position_menu,
+ icon, button, activate_time);
+}
+
+static void
xfpm_tray_icon_class_init(XfpmTrayIconClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS(klass);
+ signals[SHOW_INFORMATION] =
+ g_signal_new("show-information",
+ XFPM_TYPE_TRAY_ICON,
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET(XfpmTrayIconClass, show_info),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE, 0, G_TYPE_NONE);
+
object_class->finalize = xfpm_tray_icon_finalize;
g_type_class_add_private(klass,sizeof(XfpmTrayIconPrivate));
@@ -90,23 +282,31 @@
{
tray->priv = XFPM_TRAY_ICON_GET_PRIVATE(tray);
- tray->priv->icon = gtk_status_icon_new();
+ tray->priv->icon = gtk_status_icon_new();
+ tray->priv->iface = hal_iface_new ();
+ tray->priv->conf = xfpm_xfconf_new ();
tray->priv->icon_quark = 0;
g_signal_connect (tray->priv->icon, "size-changed",
G_CALLBACK (xfpm_tray_icon_size_changed_cb), tray);
+
+ g_signal_connect (tray->priv->icon, "popup-menu",
+ G_CALLBACK (xfpm_tray_icon_popup_menu_cb), tray);
}
static void
xfpm_tray_icon_finalize(GObject *object)
{
- XfpmTrayIcon *icon;
+ XfpmTrayIcon *tray;
- icon = XFPM_TRAY_ICON(object);
+ tray = XFPM_TRAY_ICON(object);
- if ( icon->priv->icon )
- g_object_unref(icon->priv->icon);
+ g_object_unref (tray->priv->icon);
+
+ g_object_unref (tray->priv->iface);
+
+ g_object_unref (tray->priv->conf);
G_OBJECT_CLASS(xfpm_tray_icon_parent_class)->finalize(object);
}
@@ -115,7 +315,7 @@
xfpm_tray_icon_new(void)
{
XfpmTrayIcon *tray = NULL;
- tray = g_object_new(XFPM_TYPE_TRAY_ICON,NULL);
+ tray = g_object_new (XFPM_TYPE_TRAY_ICON, NULL);
return tray;
}
Modified: xfce4-power-manager/trunk/src/xfpm-tray-icon.h
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-tray-icon.h 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-tray-icon.h 2009-03-28 13:48:02 UTC (rev 7010)
@@ -42,6 +42,8 @@
typedef struct
{
GObjectClass parent_class;
+
+ void (*show_info) (XfpmTrayIcon *icon);
} XfpmTrayIconClass;
Modified: xfce4-power-manager/trunk/src/xfpm-xfconf.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-xfconf.c 2009-03-27 22:29:16 UTC (rev 7009)
+++ xfce4-power-manager/trunk/src/xfpm-xfconf.c 2009-03-28 13:48:02 UTC (rev 7010)
@@ -92,6 +92,9 @@
xfpm_xfconf_property_changed_cb (XfconfChannel *channel, gchar *property,
GValue *value, XfpmXfconf *conf)
{
+ const gchar *str;
+ gint val;
+
if ( G_VALUE_TYPE(value) == G_TYPE_INVALID )
return;
@@ -99,9 +102,10 @@
if ( xfpm_strequal (property, SLEEP_SWITCH_CFG) )
{
- const gchar *str = g_value_get_string (value);
- gint val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3 )
+ str = g_value_get_string (value);
+ gint val = xfpm_shutdown_string_to_int (str);
+
+ if ( G_UNLIKELY (val == -1 || val == 3) )
{
g_warning ("Invalid value %s for property %s, using default\n", str, SLEEP_SWITCH_CFG);
conf->priv->sleep_button = XFPM_DO_NOTHING;
@@ -111,9 +115,9 @@
}
else if ( xfpm_strequal (property, LID_SWITCH_ON_AC_CFG) )
{
- const gchar *str = g_value_get_string (value);
- gint val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3 )
+ str = g_value_get_string (value);
+ gint val = xfpm_shutdown_string_to_int (str);
+ if ( G_UNLIKELY (val == -1 || val == 3) )
{
g_warning ("Invalid value %s for property %s, using default\n", str, LID_SWITCH_ON_AC_CFG);
conf->priv->lid_button_ac = XFPM_DO_NOTHING;
@@ -123,9 +127,9 @@
}
else if ( xfpm_strequal (property, LID_SWITCH_ON_BATTERY_CFG) )
{
- const gchar *str = g_value_get_string (value);
- gint val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3 )
+ str = g_value_get_string (value);
+ gint val = xfpm_shutdown_string_to_int (str);
+ if ( G_UNLIKELY (val == -1 || val == 3) )
{
g_warning ("Invalid value %s for property %s, using default\n", str, LID_SWITCH_ON_BATTERY_CFG);
conf->priv->lid_button_battery = XFPM_DO_NOTHING;
@@ -140,37 +144,32 @@
#ifdef HAVE_DPMS
if ( xfpm_strequal (property, DPMS_ENABLED_CFG) )
{
- gboolean val = g_value_get_boolean (value);
- conf->priv->dpms_enabled = val;
+ conf->priv->dpms_enabled = g_value_get_boolean (value);
g_signal_emit (G_OBJECT(conf), signals[DPMS_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, ON_AC_DPMS_SLEEP) )
{
- guint val = g_value_get_uint (value);
- conf->priv->dpms_sleep_on_ac = MIN(3600, val * 60);
+ conf->priv->dpms_sleep_on_ac = MIN(3600, g_value_get_uint (value) * 60);
g_signal_emit (G_OBJECT(conf), signals[DPMS_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, ON_AC_DPMS_OFF) )
{
- guint val = g_value_get_uint (value);
- conf->priv->dpms_off_on_ac = MIN(3600, val * 60);
+ conf->priv->dpms_off_on_ac = MIN(3600, g_value_get_uint (value) * 60);
g_signal_emit (G_OBJECT(conf), signals[DPMS_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, ON_BATT_DPMS_SLEEP) )
{
- guint val = g_value_get_uint (value);
- conf->priv->dpms_sleep_on_battery = MIN(3600, val * 60);
+ conf->priv->dpms_sleep_on_battery = MIN(3600, g_value_get_uint (value) * 60);
g_signal_emit (G_OBJECT(conf), signals[DPMS_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, ON_BATT_DPMS_OFF) )
{
- guint val = g_value_get_uint (value);
- conf->priv->dpms_off_on_battery = MIN (3600, val * 60);
+ conf->priv->dpms_off_on_battery = MIN (3600, g_value_get_uint (value) * 60);
g_signal_emit (G_OBJECT(conf), signals[DPMS_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, DPMS_SLEEP_MODE) )
{
- const gchar *str = g_value_get_string (value);
+ str = g_value_get_string (value);
if ( xfpm_strequal (str, "sleep" ) )
{
conf->priv->sleep_dpms_mode = TRUE;
@@ -189,41 +188,36 @@
#endif /* HAVE_DPMS */
else if ( xfpm_strequal(property, POWER_SAVE_ON_BATTERY) )
{
- gboolean val = g_value_get_boolean (value);
- conf->priv->power_save_on_battery = val;
+ conf->priv->power_save_on_battery = g_value_get_boolean (value);
g_signal_emit (G_OBJECT(conf), signals[POWER_SAVE_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, BRIGHTNESS_ON_AC ) )
{
- guint val = g_value_get_uint (value);
+ conf->priv->brightness_on_ac_timeout = g_value_get_uint (value);
- if ( val > 120 || val < 9)
+ if ( G_UNLIKELY (conf->priv->brightness_on_ac_timeout > 120 || conf->priv->brightness_on_ac_timeout < 9 ))
{
- g_warning ("Value %d for %s is out of range", val, BRIGHTNESS_ON_AC );
+ g_warning ("Value %d for %s is out of range", conf->priv->brightness_on_ac_timeout, BRIGHTNESS_ON_AC );
+ conf->priv->brightness_on_ac_timeout = 9;
}
- else
- {
- conf->priv->brightness_on_ac_timeout = val;
- }
g_signal_emit (G_OBJECT(conf), signals[BRIGHTNESS_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, BRIGHTNESS_ON_BATTERY ) )
{
- guint val = g_value_get_uint (value);
+ conf->priv->brightness_on_battery_timeout = g_value_get_uint (value);
- if ( val > 120 || val < 9)
+ if ( G_UNLIKELY (conf->priv->brightness_on_battery_timeout > 120 || conf->priv->brightness_on_battery_timeout < 9 ))
{
- g_warning ("Value %d for %s is out of range", val, BRIGHTNESS_ON_BATTERY );
+ g_warning ("Value %d for %s is out of range", conf->priv->brightness_on_battery_timeout, BRIGHTNESS_ON_BATTERY );
+ conf->priv->brightness_on_battery_timeout = 9;
}
- else
- conf->priv->brightness_on_battery_timeout = val;
g_signal_emit (G_OBJECT(conf), signals[POWER_SAVE_SETTINGS_CHANGED], 0);
}
else if ( xfpm_strequal (property, CRITICAL_BATT_ACTION_CFG) )
{
- const gchar *str = g_value_get_string (value);
- gint val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3 || val == 1)
+ str = g_value_get_string (value);
+ val = xfpm_shutdown_string_to_int (str);
+ if ( G_UNLIKELY (val == -1 || val == 3 || val == 1 ))
{
g_warning ("Invalid value %s for property %s, using default\n", str, CRITICAL_BATT_ACTION_CFG);
conf->priv->critical_action = XFPM_DO_NOTHING;
@@ -233,14 +227,13 @@
}
else if ( xfpm_strequal (property, SHOW_TRAY_ICON_CFG) )
{
- guint val = g_value_get_uint (value);
- conf->priv->show_icon = val;
+ conf->priv->show_icon = g_value_get_uint (value);
g_signal_emit (G_OBJECT(conf), signals[TRAY_ICON_SETTINGS_CHANGED], 0 );
}
else if ( xfpm_strequal( property, CRITICAL_POWER_LEVEL) )
{
- guint val = g_value_get_uint (value);
- if ( val > 20 )
+ val = g_value_get_uint (value);
+ if ( G_UNLIKELY (val > 20) )
{
g_warning ("Value %d for property %s is out of range \n", val, CRITICAL_POWER_LEVEL);
conf->priv->critical_level = 10;
@@ -259,7 +252,7 @@
str = xfconf_channel_get_string (conf->priv->channel, SLEEP_SWITCH_CFG, "Nothing");
val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3)
+ if ( G_UNLIKELY (val == -1 || val == 3) )
{
g_warning ("Invalid value %s for property %s, using default\n", str, SLEEP_SWITCH_CFG);
conf->priv->sleep_button = XFPM_DO_NOTHING;
@@ -272,7 +265,7 @@
str = xfconf_channel_get_string (conf->priv->channel, LID_SWITCH_ON_AC_CFG, "Nothing");
val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3)
+ if ( G_UNLIKELY (val == -1 || val == 3) )
{
g_warning ("Invalid value %s for property %s, using default\n", str, LID_SWITCH_ON_AC_CFG);
conf->priv->lid_button_ac = XFPM_DO_NOTHING;
@@ -285,7 +278,7 @@
str = xfconf_channel_get_string (conf->priv->channel, LID_SWITCH_ON_BATTERY_CFG, "Nothing");
val = xfpm_shutdown_string_to_int (str);
- if ( val == -1 || val == 3)
+ if ( G_UNLIKELY (val == -1 || val == 3) )
{
g_warning ("Invalid value %s for property %s, using default\n", str, LID_SWITCH_ON_BATTERY_CFG);
conf->priv->lid_button_battery = XFPM_DO_NOTHING;
@@ -336,7 +329,7 @@
conf->priv->brightness_on_ac_timeout =
xfconf_channel_get_uint (conf->priv->channel, BRIGHTNESS_ON_AC, 9);
- if ( conf->priv->brightness_on_ac_timeout > 120 || conf->priv->brightness_on_ac_timeout < 9)
+ if ( G_UNLIKELY (conf->priv->brightness_on_ac_timeout > 120 || conf->priv->brightness_on_ac_timeout < 9 ))
{
g_warning ("Value %d for %s is out of range", conf->priv->brightness_on_ac_timeout, BRIGHTNESS_ON_AC );
conf->priv->brightness_on_ac_timeout = 9;
@@ -345,7 +338,7 @@
conf->priv->brightness_on_battery_timeout =
xfconf_channel_get_uint (conf->priv->channel, BRIGHTNESS_ON_BATTERY, 10);
- if ( conf->priv->brightness_on_battery_timeout > 120 || conf->priv->brightness_on_battery_timeout < 9)
+ if ( G_UNLIKELY (conf->priv->brightness_on_battery_timeout > 120 || conf->priv->brightness_on_battery_timeout < 9) )
{
g_warning ("Value %d for %s is out of range", conf->priv->brightness_on_battery_timeout, BRIGHTNESS_ON_BATTERY );
conf->priv->brightness_on_battery_timeout = 10;
@@ -358,7 +351,7 @@
conf->priv->show_icon =
xfconf_channel_get_uint (conf->priv->channel, SHOW_TRAY_ICON_CFG, SHOW_ICON_WHEN_BATTERY_PRESENT);
- if ( conf->priv->show_icon < 0 || conf->priv->show_icon > 3 )
+ if ( G_UNLIKELY (conf->priv->show_icon < 0 || conf->priv->show_icon > 3) )
{
g_warning ("Invalid value %d for property %s, using default\n", conf->priv->show_icon, SHOW_TRAY_ICON_CFG);
xfconf_channel_set_uint (conf->priv->channel, CRITICAL_BATT_ACTION_CFG, SHOW_ICON_WHEN_BATTERY_PRESENT);
@@ -367,7 +360,7 @@
conf->priv->critical_level =
xfconf_channel_get_uint (conf->priv->channel, CRITICAL_POWER_LEVEL, 0);
- if ( conf->priv->critical_level <0 || conf->priv->critical_level > 20 )
+ if ( G_UNLIKELY (conf->priv->critical_level <0 || conf->priv->critical_level > 20) )
{
g_warning ("Value %d for property %s is out of range \n", conf->priv->critical_level, CRITICAL_POWER_LEVEL);
conf->priv->critical_level = 10;
More information about the Goodies-commits
mailing list