summaryrefslogtreecommitdiff
path: root/src/gs-listener-dbus.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gs-listener-dbus.c')
-rw-r--r--src/gs-listener-dbus.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gs-listener-dbus.c b/src/gs-listener-dbus.c
index d398601..a37e3f9 100644
--- a/src/gs-listener-dbus.c
+++ b/src/gs-listener-dbus.c
@@ -1373,6 +1373,8 @@ do_introspect (DBusConnection *connection,
" <interface name=\"org.mate.ScreenSaver\">\n"
" <method name=\"Lock\">\n"
" </method>\n"
+ " <method name=\"Unlock\">\n"
+ " </method>\n"
" <method name=\"Cycle\">\n"
" </method>\n"
" <method name=\"SimulateUserActivity\">\n"
@@ -1465,6 +1467,11 @@ listener_dbus_handle_session_message (DBusConnection *connection,
g_signal_emit (listener, signals [LOCK], 0);
return DBUS_HANDLER_RESULT_HANDLED;
}
+ if (dbus_message_is_method_call (message, GS_LISTENER_SERVICE, "Unlock"))
+ {
+ gs_listener_set_active (listener, FALSE);
+ return DBUS_HANDLER_RESULT_HANDLED;
+ }
if (dbus_message_is_method_call (message, GS_LISTENER_SERVICE, "Quit"))
{
g_signal_emit (listener, signals [QUIT], 0);