17#include "SessionBroadcast.h"
18#include <QDBusConnection>
19#include <QDBusConnectionInterface>
20#include <QDBusInterface>
24SessionBroadcast::SessionBroadcast(QObject* parent)
27 m_username = QString::fromUtf8(g_get_user_name());
29 auto connection = QDBusConnection::SM_BUSNAME();
30 auto interface = connection.interface();
31 interface->startService(QStringLiteral(
"com.lomiri.Shell.Greeter.Broadcast"));
33 m_broadcaster =
new QDBusInterface(QStringLiteral(
"com.lomiri.Shell.Greeter.Broadcast"),
34 QStringLiteral(
"/com/lomiri/Shell/Greeter/Broadcast"),
35 QStringLiteral(
"com.lomiri.Shell.Greeter.Broadcast"),
38 connect(m_broadcaster, SIGNAL(StartUrl(
const QString &,
const QString &)),
39 this, SLOT(onStartUrl(
const QString &,
const QString &)));
41 connect(m_broadcaster, SIGNAL(ShowHome(
const QString &)),
42 this, SLOT(onShowHome(
const QString &)));
45void SessionBroadcast::requestUrlStart(
const QString &username,
const QString &url)
47 m_broadcaster->asyncCall(QStringLiteral(
"RequestUrlStart"), username, url);
50void SessionBroadcast::requestHomeShown(
const QString &username)
52 m_broadcaster->asyncCall(QStringLiteral(
"RequestHomeShown"), username);
55void SessionBroadcast::onStartUrl(
const QString &username,
const QString &url)
60 if (username == m_username) {
65void SessionBroadcast::onShowHome(
const QString &username)
68 if (username == m_username) {