From c7cd886bd6be2745dcf4a82c7e9e074e949adbc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= Date: Thu, 15 May 2014 09:01:51 +0200 Subject: [PATCH] [screenedges] Use generated interface to lock the screen We have the interface for the effects, so it's better to use the generated code instead of custom written code. --- screenedge.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/screenedge.cpp b/screenedge.cpp index ef317011ce..bdf154f91b 100644 --- a/screenedge.cpp +++ b/screenedge.cpp @@ -40,6 +40,8 @@ along with this program. If not, see . #include "utils.h" #include "workspace.h" #include "virtualdesktops.h" +// DBus generated +#include "screenlocker_interface.h" // Qt #include #include @@ -219,8 +221,12 @@ bool Edge::handleAction() return true; } case ElectricActionLockScreen: { // Lock the screen - QDBusInterface screenSaver(QStringLiteral("org.kde.screensaver"), QStringLiteral("/ScreenSaver")); - screenSaver.asyncCall(QStringLiteral("Lock")); + OrgFreedesktopScreenSaverInterface interface(QStringLiteral("org.freedesktop.ScreenSaver"), + QStringLiteral("/ScreenSaver"), + QDBusConnection::sessionBus()); + if (interface.isValid()) { + interface.Lock(); + } return true; } default: