File indexing completed on 2024-04-21 05:27:32
0001 /* 0002 SPDX-FileCopyrightText: 2014 Martin Gräßlin <mgraesslin@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #include "fakelogind.h" 0007 0008 FakeLogind::FakeLogind(QObject *parent) 0009 : QObject(parent) 0010 , m_session(new FakeLogindSession(QStringLiteral("/org/freedesktop/login1/session/auto"), this)) 0011 { 0012 QDBusConnection::sessionBus().registerObject(QStringLiteral("/org/freedesktop/login1"), this, QDBusConnection::ExportScriptableContents); 0013 QDBusConnection::sessionBus().registerService(QStringLiteral("org.freedesktop.login1")); 0014 } 0015 0016 FakeLogind::~FakeLogind() 0017 { 0018 QDBusConnection::sessionBus().unregisterObject(QStringLiteral("/org/freedesktop/login1")); 0019 QDBusConnection::sessionBus().unregisterService(QStringLiteral("org.freedesktop.login1")); 0020 } 0021 0022 QDBusObjectPath FakeLogind::GetSession(const QString &session) 0023 { 0024 Q_UNUSED(session) 0025 return QDBusObjectPath(m_session->path()); 0026 } 0027 0028 void FakeLogind::lock() 0029 { 0030 m_session->lock(); 0031 } 0032 0033 void FakeLogind::unlock() 0034 { 0035 m_session->unlock(); 0036 } 0037 0038 FakeLogindSession::FakeLogindSession(const QString &path, QObject *parent) 0039 : QObject(parent) 0040 , m_path(path) 0041 { 0042 QDBusConnection::sessionBus().registerObject(m_path, this, QDBusConnection::ExportScriptableContents); 0043 } 0044 0045 FakeLogindSession::~FakeLogindSession() 0046 { 0047 QDBusConnection::sessionBus().unregisterObject(m_path); 0048 } 0049 0050 void FakeLogindSession::lock() 0051 { 0052 Q_EMIT Lock(); 0053 } 0054 0055 void FakeLogindSession::unlock() 0056 { 0057 Q_EMIT Unlock(); 0058 } 0059 0060 #include "moc_fakelogind.cpp"