[Goodies-commits] r7173 - in xfce4-power-manager/trunk: . settings src
Ali Abdallah
aliov at xfce.org
Sun Apr 12 22:54:39 CEST 2009
Author: aliov
Date: 2009-04-12 20:54:39 +0000 (Sun, 12 Apr 2009)
New Revision: 7173
Modified:
xfce4-power-manager/trunk/ChangeLog
xfce4-power-manager/trunk/TODO
xfce4-power-manager/trunk/settings/xfpm-settings.c
xfce4-power-manager/trunk/settings/xfpm-settings.glade
xfce4-power-manager/trunk/src/xfpm-brightness-hal.c
xfce4-power-manager/trunk/src/xfpm-config.h
xfce4-power-manager/trunk/src/xfpm-engine.c
xfce4-power-manager/trunk/src/xfpm-shutdown.c
xfce4-power-manager/trunk/src/xfpm-tray-icon.c
xfce4-power-manager/trunk/src/xfpm-xfconf.c
Log:
Provide the possibility to disable brightness control on key press by setting a xfconf property
Modified: xfce4-power-manager/trunk/ChangeLog
===================================================================
--- xfce4-power-manager/trunk/ChangeLog 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/ChangeLog 2009-04-12 20:54:39 UTC (rev 7173)
@@ -1,4 +1,7 @@
+2009-04-12 22:54 Ali aliov at xfce.org
+ * : Provide the possibility to disable brightness control on key press by setting a xfconf property
+
2009-04-12 21:29 Ali aliov at xfce.org
* : Enable HAL power button event even if the button is correctly mapped in X, as X doesn't always generates events for it
Modified: xfce4-power-manager/trunk/TODO
===================================================================
--- xfce4-power-manager/trunk/TODO 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/TODO 2009-04-12 20:54:39 UTC (rev 7173)
@@ -1,3 +1,5 @@
+* : Solve the problem of possible multiple sleep requests between us and the session manager.
+
* : OnLowBattery DBus signals (currently there is only OnBattery DBus signal).
* : Support Suspend Hybrid! ( DeviceKit power will not support this! ).
Modified: xfce4-power-manager/trunk/settings/xfpm-settings.c
===================================================================
--- xfce4-power-manager/trunk/settings/xfpm-settings.c 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/settings/xfpm-settings.c 2009-04-12 20:54:39 UTC (rev 7173)
@@ -1403,7 +1403,7 @@
gboolean has_hibernate_button, gboolean has_power_button,
GdkNativeWindow id)
{
- TRACE("system_laptop=%s user_privilege=%s can_suspend=%s can_hibernate=%s has_lcd_brightness=%s has_lid=%s"\
+ TRACE("system_laptop=%s user_privilege=%s can_suspend=%s can_hibernate=%s has_lcd_brightness=%s has_lid=%s "\
"has_sleep_button=%s has_hibernate_button=%s has_power_button=%s",
xfpm_bool_to_string (system_laptop), xfpm_bool_to_string (user_privilege),
xfpm_bool_to_string (can_suspend), xfpm_bool_to_string (can_hibernate),
Modified: xfce4-power-manager/trunk/settings/xfpm-settings.glade
===================================================================
--- xfce4-power-manager/trunk/settings/xfpm-settings.glade 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/settings/xfpm-settings.glade 2009-04-12 20:54:39 UTC (rev 7173)
@@ -903,24 +903,53 @@
<child>
<widget class="GtkVBox" id="vbox2">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="spacing">12</property>
<child>
- <widget class="GtkHBox" id="hbox1">
+ <widget class="GtkTable" id="table1">
<property name="visible">True</property>
- <property name="spacing">10</property>
+ <property name="n_rows">2</property>
+ <property name="n_columns">2</property>
+ <property name="row_spacing">8</property>
<child>
- <widget class="GtkLabel" id="label2">
+ <widget class="GtkVBox" id="vbox5">
<property name="visible">True</property>
- <property name="label" translatable="yes">Set monitor sleep mode:</property>
+ <property name="orientation">vertical</property>
+ <child>
+ <widget class="GtkRadioButton" id="inactivity-suspend">
+ <property name="label" translatable="yes">Suspend</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="active">True</property>
+ <property name="draw_indicator">True</property>
+ </widget>
+ <packing>
+ <property name="position">0</property>
+ </packing>
+ </child>
+ <child>
+ <widget class="GtkRadioButton" id="inactivity-hibernate">
+ <property name="label" translatable="yes">Hibernate</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">False</property>
+ <property name="draw_indicator">True</property>
+ <property name="group">inactivity-suspend</property>
+ </widget>
+ <packing>
+ <property name="position">1</property>
+ </packing>
+ </child>
</widget>
<packing>
- <property name="expand">False</property>
- <property name="position">0</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
</packing>
</child>
<child>
<widget class="GtkVBox" id="vbox3">
<property name="visible">True</property>
+ <property name="orientation">vertical</property>
<child>
<widget class="GtkRadioButton" id="sleep-dpms-mode">
<property name="label" translatable="yes">Standby</property>
@@ -940,7 +969,6 @@
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="receives_default">False</property>
- <property name="active">True</property>
<property name="draw_indicator">True</property>
<property name="group">sleep-dpms-mode</property>
</widget>
@@ -950,69 +978,50 @@
</child>
</widget>
<packing>
- <property name="position">1</property>
+ <property name="left_attach">1</property>
+ <property name="right_attach">2</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
</packing>
</child>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkHBox" id="hbox7">
- <property name="visible">True</property>
- <property name="spacing">10</property>
<child>
- <widget class="GtkLabel" id="label7">
+ <widget class="GtkHBox" id="hbox1">
<property name="visible">True</property>
- <property name="label" translatable="yes">Set computer inactivity sleep mode:</property>
- </widget>
- <packing>
- <property name="expand">False</property>
- <property name="position">0</property>
- </packing>
- </child>
- <child>
- <widget class="GtkVBox" id="vbox5">
- <property name="visible">True</property>
- <property name="orientation">vertical</property>
<child>
- <widget class="GtkRadioButton" id="inactivity-suspend">
- <property name="label" translatable="yes">Suspend</property>
+ <widget class="GtkLabel" id="label7">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
+ <property name="label" translatable="yes">Set computer inactivity sleep mode:</property>
</widget>
<packing>
+ <property name="expand">False</property>
<property name="position">0</property>
</packing>
</child>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkHBox" id="hbox7">
+ <property name="visible">True</property>
<child>
- <widget class="GtkRadioButton" id="inactivity-hibernate">
- <property name="label" translatable="yes">Hibernate</property>
+ <widget class="GtkLabel" id="label2">
<property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">False</property>
- <property name="active">True</property>
- <property name="draw_indicator">True</property>
- <property name="group">inactivity-suspend</property>
+ <property name="label" translatable="yes">Set monitor sleep mode:</property>
</widget>
<packing>
- <property name="position">1</property>
+ <property name="expand">False</property>
+ <property name="position">0</property>
</packing>
</child>
</widget>
<packing>
- <property name="position">1</property>
+ <property name="top_attach">1</property>
+ <property name="bottom_attach">2</property>
</packing>
</child>
</widget>
<packing>
<property name="expand">False</property>
- <property name="position">1</property>
+ <property name="position">0</property>
</packing>
</child>
<child>
@@ -1044,7 +1053,7 @@
</widget>
<packing>
<property name="expand">False</property>
- <property name="position">2</property>
+ <property name="position">1</property>
</packing>
</child>
<child>
@@ -1057,7 +1066,7 @@
</widget>
<packing>
<property name="expand">False</property>
- <property name="position">3</property>
+ <property name="position">2</property>
</packing>
</child>
</widget>
Modified: xfce4-power-manager/trunk/src/xfpm-brightness-hal.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-brightness-hal.c 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/src/xfpm-brightness-hal.c 2009-04-12 20:54:39 UTC (rev 7173)
@@ -204,6 +204,11 @@
static void
xfpm_brightness_hal_up (XfpmBrightnessHal *brg)
{
+ gboolean enable_brightness = xfpm_xfconf_get_property_bool (brg->priv->conf, ENABLE_BRIGHTNESS_CONTROL);
+
+ if ( !enable_brightness )
+ return;
+
if ( brg->priv->brightness_in_hw )
goto signal;
@@ -221,6 +226,11 @@
static void
xfpm_brightness_hal_down (XfpmBrightnessHal *brg)
{
+ gboolean enable_brightness = xfpm_xfconf_get_property_bool (brg->priv->conf, ENABLE_BRIGHTNESS_CONTROL);
+
+ if ( !enable_brightness )
+ return;
+
if ( brg->priv->brightness_in_hw )
goto signal;
Modified: xfce4-power-manager/trunk/src/xfpm-config.h
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-config.h 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/src/xfpm-config.h 2009-04-12 20:54:39 UTC (rev 7173)
@@ -71,6 +71,8 @@
#define DPMS_SLEEP_MODE "/xfce4-power-manager/dpms-sleep-mode" /* 0= sleep, 1=suspend */
#endif
+#define ENABLE_BRIGHTNESS_CONTROL "/xfce4-power-manager/change-brightness-on-key-events"
+
G_END_DECLS
#endif /* __XFPM_CONFIG_H */
Modified: xfce4-power-manager/trunk/src/xfpm-engine.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-engine.c 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/src/xfpm-engine.c 2009-04-12 20:54:39 UTC (rev 7173)
@@ -44,7 +44,6 @@
#include "xfpm-adapter.h"
#include "xfpm-xfconf.h"
#include "xfpm-cpu.h"
-#include "xfpm-network-manager.h"
#include "xfpm-button.h"
#include "xfpm-inhibit.h"
#include "xfpm-backlight.h"
@@ -113,7 +112,6 @@
g_warning ("%s", error->message);
g_error_free (error);
}
- xfpm_send_message_to_network_manager ("wake");
return FALSE;
}
@@ -129,7 +127,6 @@
g_warning ("%s", error->message);
g_error_free (error);
}
- xfpm_send_message_to_network_manager ("wake");
return FALSE;
}
@@ -170,7 +167,6 @@
else
{
TRACE ("Going to do %s\n", action);
- xfpm_send_message_to_network_manager ("sleep");
if (shutdown == XFPM_DO_SHUTDOWN)
{
Modified: xfce4-power-manager/trunk/src/xfpm-shutdown.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-shutdown.c 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/src/xfpm-shutdown.c 2009-04-12 20:54:39 UTC (rev 7173)
@@ -39,8 +39,10 @@
#include "libxfpm/hal-monitor.h"
#include "libxfpm/xfpm-string.h"
+
#include "xfpm-shutdown.h"
#include "xfpm-session.h"
+#include "xfpm-network-manager.h"
#include "xfpm-errors.h"
#define DUPLICATE_SHUTDOWN_REQUEST 8.0f
@@ -266,7 +268,7 @@
{
DBusMessage *message, *reply = NULL;
DBusError error;
- gint exit_code;
+ gint exit_code = 0;
message = dbus_message_new_method_call ("org.freedesktop.Hal",
"/org/freedesktop/Hal/devices/computer",
@@ -278,7 +280,7 @@
return FALSE;
}
- if ( !g_strcmp0("Suspend", shutdown ) )
+ if ( !g_strcmp0 ("Suspend", shutdown ) )
{
gint seconds = 0;
dbus_message_append_args (message, DBUS_TYPE_INT32, &seconds, DBUS_TYPE_INVALID);
@@ -309,6 +311,7 @@
if ( exit_code == 0) return TRUE;
else
{
+ g_warning ("Sleep program exited with exit code %d", exit_code);
g_set_error (gerror, 0, 0, "System failed to sleep");
return FALSE;
}
@@ -385,6 +388,7 @@
if (shutdown->priv->block_shutdown)
return FALSE;
+ xfpm_send_message_to_network_manager ("sleep");
g_timeout_add_seconds (timeout, func, data);
shutdown->priv->block_shutdown = TRUE;
return TRUE;
@@ -401,10 +405,13 @@
return;
}
+ xfpm_send_message_to_network_manager ("sleep");
+
if ( !xfpm_session_shutdown (shutdown->priv->session) )
xfpm_shutdown_internal (dbus_g_connection_get_connection(shutdown->priv->bus), "Shutdown", NULL);
shutdown->priv->block_shutdown = FALSE;
+ xfpm_send_message_to_network_manager ("wake");
}
void xfpm_hibernate (XfpmShutdown *shutdown, GError **error)
@@ -421,6 +428,8 @@
return;
}
+ xfpm_send_message_to_network_manager ("sleep");
+
xfpm_shutdown_internal (dbus_g_connection_get_connection(shutdown->priv->bus), "Hibernate", &error_internal);
shutdown->priv->block_shutdown = FALSE;
@@ -435,6 +444,8 @@
g_error_free (error_internal);
}
g_signal_emit (G_OBJECT (shutdown), signals [WAKING_UP], 0);
+
+ xfpm_send_message_to_network_manager ("wake");
}
void xfpm_suspend (XfpmShutdown *shutdown, GError **error)
@@ -451,6 +462,7 @@
return;
}
+ xfpm_send_message_to_network_manager ("sleep");
xfpm_shutdown_internal (dbus_g_connection_get_connection(shutdown->priv->bus), "Suspend", &error_internal);
shutdown->priv->block_shutdown = FALSE;
@@ -465,6 +477,8 @@
g_error_free (error_internal);
}
g_signal_emit (G_OBJECT (shutdown), signals [WAKING_UP], 0);
+
+ xfpm_send_message_to_network_manager ("wake");
}
void xfpm_shutdown_ask (XfpmShutdown *shutdown)
Modified: xfce4-power-manager/trunk/src/xfpm-tray-icon.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-tray-icon.c 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/src/xfpm-tray-icon.c 2009-04-12 20:54:39 UTC (rev 7173)
@@ -37,7 +37,6 @@
#include "libxfpm/xfpm-notify.h"
#include "xfpm-tray-icon.h"
-#include "xfpm-network-manager.h"
#include "xfpm-shutdown.h"
#include "xfpm-inhibit.h"
#include "xfpm-xfconf.h"
@@ -122,7 +121,6 @@
tray->priv->icon);
g_error_free (error);
}
- xfpm_send_message_to_network_manager ("wake");
return FALSE;
}
@@ -146,7 +144,6 @@
tray->priv->icon);
g_error_free (error);
}
- xfpm_send_message_to_network_manager ("wake");
return FALSE;
}
@@ -177,7 +174,6 @@
(GSourceFunc) xfpm_tray_icon_do_hibernate,
2,
tray);
- xfpm_send_message_to_network_manager ("sleep");
}
}
@@ -209,7 +205,6 @@
2,
tray);
- xfpm_send_message_to_network_manager ("sleep");
}
}
Modified: xfce4-power-manager/trunk/src/xfpm-xfconf.c
===================================================================
--- xfce4-power-manager/trunk/src/xfpm-xfconf.c 2009-04-12 19:29:18 UTC (rev 7172)
+++ xfce4-power-manager/trunk/src/xfpm-xfconf.c 2009-04-12 20:54:39 UTC (rev 7173)
@@ -81,6 +81,7 @@
guint inactivity_on_ac;
guint inactivity_on_battery;
gboolean sleep_inactivity; /* TRUE = suspend FALSE = hibernate*/
+ gboolean enable_brightness;
};
enum
@@ -318,6 +319,8 @@
conf->priv->sleep_inactivity = TRUE;
}
}
+ else if ( xfpm_strequal (property, ENABLE_BRIGHTNESS_CONTROL) )
+ conf->priv->enable_brightness = g_value_get_boolean (value);
}
static void
@@ -500,6 +503,9 @@
g_critical("Invalid value %s for property %s\n", str, INACTIVITY_SLEEP_MODE);
conf->priv->sleep_inactivity = TRUE;
}
+
+ conf->priv->enable_brightness =
+ xfconf_channel_get_bool (conf->priv->channel, ENABLE_BRIGHTNESS_CONTROL, TRUE);
}
static void
@@ -650,6 +656,8 @@
return conf->priv->power_button;
else if ( xfpm_strequal (property, HIBERNATE_SWITCH_CFG ) )
return conf->priv->hibernate_button;
+ else if ( xfpm_strequal (property, ENABLE_BRIGHTNESS_CONTROL) )
+ return conf->priv->enable_brightness;
g_warn_if_reached ();
More information about the Goodies-commits
mailing list