aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIain Lane <iain.lane@canonical.com>2013-03-19 09:53:10 +0000
committerIain Lane <iain.lane@canonical.com>2013-03-19 09:53:10 +0000
commitbfed177813a2ca323e092511cc8fb2ffd413b127 (patch)
tree8b3b3daebb575712d93d6d8dba9f46105e7bcfbf /src
parent11b887fe74454b5a506a8f113cdecf7750aebbf8 (diff)
downloadayatana-indicator-datetime-bfed177813a2ca323e092511cc8fb2ffd413b127.tar.gz
ayatana-indicator-datetime-bfed177813a2ca323e092511cc8fb2ffd413b127.tar.bz2
ayatana-indicator-datetime-bfed177813a2ca323e092511cc8fb2ffd413b127.zip
Use logind instead of UPower as the UPower interface we're relying on will go away
Diffstat (limited to 'src')
-rw-r--r--src/datetime-service.c20
1 files changed, 12 insertions, 8 deletions
diff --git a/src/datetime-service.c b/src/datetime-service.c
index b0182c9..549a45c 100644
--- a/src/datetime-service.c
+++ b/src/datetime-service.c
@@ -1154,10 +1154,14 @@ static void
session_active_change_cb (GDBusProxy * proxy, gchar * sender_name, gchar * signal_name,
GVariant * parameters, gpointer user_data)
{
- // Just returned from suspend. Don't care about the sleep type.
- if (g_strcmp0(signal_name, "NotifyResume") == 0) {
- g_debug ("System has been resumed; adjusting clock");
- on_clock_skew ();
+ // Suspending / returning from suspend (true / false)
+ if (g_strcmp0(signal_name, "PrepareForSleep") == 0) {
+ gboolean sleeping = FALSE;
+ g_variant_get (parameters, "(b)", &sleeping);
+ if (!sleeping) {
+ g_debug ("System has been resumed; adjusting clock");
+ on_clock_skew ();
+ }
}
return;
}
@@ -1171,7 +1175,7 @@ system_proxy_cb (GObject * object, GAsyncResult * res, gpointer user_data)
GDBusProxy * proxy = g_dbus_proxy_new_for_bus_finish(res, &error);
if (error != NULL) {
- g_warning("Could not grab DBus proxy for UPower: %s", error->message);
+ g_warning("Could not grab DBus proxy for logind: %s", error->message);
g_clear_error (&error);
return;
}
@@ -1479,9 +1483,9 @@ main (int argc, char ** argv)
g_dbus_proxy_new_for_bus (G_BUS_TYPE_SYSTEM,
G_DBUS_PROXY_FLAGS_NONE,
NULL,
- "org.freedesktop.UPower",
- "/org/freedesktop/UPower",
- "org.freedesktop.UPower",
+ "org.freedesktop.login1",
+ "/org/freedesktop/login1",
+ "org.freedesktop.login1.Manager",
NULL, system_proxy_cb, dbus);
mainloop = g_main_loop_new(NULL, FALSE);