summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2009-10-19 16:43:48 -0400
committerRay Strode <rstrode@redhat.com>2009-10-19 16:44:11 -0400
commit1920a9b938322aa4dcb3228ad99f6af0bf521540 (patch)
tree4a9296c0e4e4ee8e47bef60dbbe0ab0749fb8cbc
parentc4a7d29fb7f4f2021f15bbf24b7ad82bac26bfc8 (diff)
downloadgdm-1920a9b938322aa4dcb3228ad99f6af0bf521540.tar.gz
Make DeviceKit-power optional
-rw-r--r--configure.ac8
-rw-r--r--gui/simple-greeter/gdm-greeter-login-window.c13
2 files changed, 20 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 2cae1cff..71b024c6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -105,8 +105,14 @@ AC_SUBST(GCONF_CFLAGS)
AC_SUBST(GCONF_LIBS)
PKG_CHECK_MODULES(DEVKIT_POWER,
- devkit-power-gobject >= $DEVKIT_POWER_REQUIRED_VERSION
+ devkit-power-gobject >= $DEVKIT_POWER_REQUIRED_VERSION,
+ have_devicekit_power=yes,
+ have_devicekit_power=no
)
+if test "x$have_devicekit_power" = "xyes" ; then
+ AC_DEFINE(HAVE_DEVICEKIT_POWER, [], [Define if we have DeviceKit-power])
+fi
+AC_SUBST(HAVE_DEVICEKIT_POWER)
AC_SUBST(DEVKIT_POWER_CFLAGS)
AC_SUBST(DEVKIT_POWER_LIBS)
diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c
index 7d4ef83a..10a5132f 100644
--- a/gui/simple-greeter/gdm-greeter-login-window.c
+++ b/gui/simple-greeter/gdm-greeter-login-window.c
@@ -56,7 +56,9 @@
#include <dbus/dbus-glib.h>
#include <dbus/dbus-glib-lowlevel.h>
+#ifdef HAVE_DEVICEKIT_POWER
#include <devkit-power-gobject/devicekit-power.h>
+#endif
#include "gdm-settings-client.h"
#include "gdm-settings-keys.h"
@@ -475,6 +477,7 @@ adjust_other_login_visibility(GdmGreeterLoginWindow *login_window)
}
}
+#ifdef HAVE_DEVICEKIT_POWER
static gboolean
can_suspend (GdmGreeterLoginWindow *login_window)
{
@@ -489,6 +492,7 @@ can_suspend (GdmGreeterLoginWindow *login_window)
g_object_unref (dkp_client);
return ret;
}
+#endif
static void
remove_sensitize_power_buttons_timeout (GdmGreeterLoginWindow *login_window)
@@ -539,7 +543,12 @@ switch_mode (GdmGreeterLoginWindow *login_window,
gboolean show_suspend_button;
show_restart_buttons = get_show_restart_buttons (login_window);
+
+#ifdef HAVE_DEVICEKIT_POWER
show_suspend_button = can_suspend (login_window);
+#else
+ show_suspend_button = FALSE;
+#endif
/* we want to run this even if we're supposed to
be in the mode already so that we reset everything
@@ -625,6 +634,7 @@ do_disconnect (GdmGreeterLoginWindow *login_window)
gtk_main_quit ();
}
+#ifdef HAVE_DEVICEKIT_POWER
static void
do_suspend (GdmGreeterLoginWindow *login_window)
{
@@ -642,6 +652,7 @@ do_suspend (GdmGreeterLoginWindow *login_window)
}
g_object_unref (dkp_client);
}
+#endif
static void
delete_entry_text (GtkWidget *entry)
@@ -960,7 +971,9 @@ static void
suspend_button_clicked (GtkButton *button,
GdmGreeterLoginWindow *login_window)
{
+#ifdef HAVE_DEVICEKIT_POWER
do_suspend (login_window);
+#endif
}