diff --git a/ChangeLog b/ChangeLog index f0099f7621983a4e8357b0d32525b47746d3056a..81d067a2785edb80b81c2d2392c635e5b046b361 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,7 @@ +2009-04-02 10:24 Ali aliov@xfce.org + * : Fix Some bugs reported by Yves Alexis + 2009-04-02 8:40 Ali aliov@xfce.org * : Patch of the man page from Robby Workman diff --git a/settings/xfpm-settings.c b/settings/xfpm-settings.c index 3ea01be7905666837925905860271189e8635ba3..f375321499d5a28a112b1d4623a78b2f19928241 100644 --- a/settings/xfpm-settings.c +++ b/settings/xfpm-settings.c @@ -412,7 +412,7 @@ critical_level_value_changed_cb (GtkSpinButton *w, XfconfChannel *channel) { guint val = (guint) gtk_spin_button_get_value (w); - if (!xfconf_channel_get_uint (channel, CRITICAL_POWER_LEVEL, val) ) + if (!xfconf_channel_set_uint (channel, CRITICAL_POWER_LEVEL, val) ) { g_critical ("Unable to set value %d for property %s\n", val, CRITICAL_POWER_LEVEL); } diff --git a/src/org.freedesktop.PowerManagement.Inhibit.xml b/src/org.freedesktop.PowerManagement.Inhibit.xml index 48b76a9fd11d5666d3e4ff8d137562a4b757f28a..ec2d0e6fedf6016c34fb2f85fa1c13d614a03bf4 100644 --- a/src/org.freedesktop.PowerManagement.Inhibit.xml +++ b/src/org.freedesktop.PowerManagement.Inhibit.xml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <node name="/"> <interface name="org.freedesktop.PowerManagement.Inhibit"> + <method name="Inhibit"> <annotation name="org.freedesktop.DBus.GLib.Async" value=""/> <arg type="s" name="application" direction="in"/> @@ -20,6 +21,11 @@ <arg type="b" name="has_inhibit_changed" direction="out"/> </signal> + <!--*** NOT STANDARD ***--> + <method name="GetInhibitors"> + <arg type="as" name="inhibitors" direction="out"/> + </method> + </interface> </node> diff --git a/src/xfpm-battery.c b/src/xfpm-battery.c index 475a339cbe56fa69ee67d1df4bde09871c0efad4..49778bd1dbcb9e27005cc6a027816cda868f047f 100644 --- a/src/xfpm-battery.c +++ b/src/xfpm-battery.c @@ -283,6 +283,9 @@ xfpm_battery_get_battery_state (XfpmBatteryState *state, return _("is almost empty"); } } + + g_warn_if_reached (); + return ""; } diff --git a/src/xfpm-inhibit.c b/src/xfpm-inhibit.c index 488c6da6bc2d4b92ef3b2576ff76bb876f64cb34..439e394a0338b7735233e205ec74505882e8dcc1 100644 --- a/src/xfpm-inhibit.c +++ b/src/xfpm-inhibit.c @@ -294,6 +294,10 @@ static gboolean xfpm_inhibit_has_inhibit(XfpmInhibit *inhibit, gboolean *OUT_has_inhibit, GError **error); +static gboolean xfpm_inhibit_get_inhibitors (XfpmInhibit *inhibit, + gchar ***OUT_inhibitor, + GError **error); + #include "org.freedesktop.PowerManagement.Inhibit.h" static void xfpm_inhibit_dbus_class_init (XfpmInhibitClass *klass) @@ -371,3 +375,25 @@ static gboolean xfpm_inhibit_has_inhibit (XfpmInhibit *inhibit, return TRUE; } + +static gboolean xfpm_inhibit_get_inhibitors (XfpmInhibit *inhibit, + gchar ***OUT_inhibitors, + GError **error) +{ + gint i; + Inhibitor *inhibitor; + + TRACE ("Get Inhibitors message received"); + + *OUT_inhibitors = g_new (gchar *, inhibit->priv->array->len + 1); + + for ( i = 0; i<inhibit->priv->array->len; i++) + { + inhibitor = g_ptr_array_index (inhibit->priv->array, i); + (*OUT_inhibitors)[i] = g_strdup (inhibitor->app_name); + } + + (*OUT_inhibitors)[inhibit->priv->array->len] = NULL; + + return TRUE; +} diff --git a/src/xfpm-xfconf.c b/src/xfpm-xfconf.c index d3970697c2706f3eb98179a324afc562de8960f4..ad478edf752d696bf44c724ce9e8a3d13cf54830 100644 --- a/src/xfpm-xfconf.c +++ b/src/xfpm-xfconf.c @@ -231,7 +231,7 @@ xfpm_xfconf_property_changed_cb (XfconfChannel *channel, gchar *property, { str = g_value_get_string (value); val = xfpm_shutdown_string_to_int (str); - if ( G_UNLIKELY (val == -1 || val == 3 || val == 1 )) + if ( G_UNLIKELY (val == -1 || 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;