diff options
author | Loren Burkholder <55629213+LorenDB@users.noreply.github.com> | 2022-04-14 11:02:55 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-14 15:02:55 +0000 |
commit | 686ebfdbecbcacdbdba6c6289f22479c2fe5133e (patch) | |
tree | ef4124f0ad74d78612555160bfd556a8e98d068b /src/MainWindow.cpp | |
parent | Translated using Weblate (Finnish) (diff) | |
download | nheko-686ebfdbecbcacdbdba6c6289f22479c2fe5133e.tar.xz |
Add D-Bus API (#916)
This adds functionality for viewing joined rooms and activating rooms.
Diffstat (limited to 'src/MainWindow.cpp')
-rw-r--r-- | src/MainWindow.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index 7235f93d..ffc3c6c1 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -54,6 +54,10 @@ #include "ui/UIA.h" #include "voip/WebRTCSession.h" +#ifdef NHEKO_DBUS_SYS +#include "dbus/NhekoDBusApi.h" +#endif + Q_DECLARE_METATYPE(mtx::events::collections::TimelineEvents) Q_DECLARE_METATYPE(std::vector<DeviceInfo>) Q_DECLARE_METATYPE(std::vector<mtx::responses::PublicRoomsChunk>) @@ -282,6 +286,18 @@ MainWindow::registerQmlTypes() engine()->addImageProvider(QStringLiteral("jdenticon"), new JdenticonProvider()); QObject::connect(engine(), &QQmlEngine::quit, &QGuiApplication::quit); + +#ifdef NHEKO_DBUS_SYS + if (UserSettings::instance()->exposeDBusApi()) { + if (QDBusConnection::sessionBus().isConnected() && + QDBusConnection::sessionBus().registerService(NHEKO_DBUS_SERVICE_NAME)) { + nheko::dbus::init(); + nhlog::ui()->info("Initialized D-Bus"); + dbusAvailable_ = true; + } else + nhlog::ui()->warn("Could not connect to D-Bus!"); + } +#endif } void |