Use async call in closeNotification

This commit is contained in:
Loren Burkholder 2021-01-20 16:09:25 -05:00
parent ac36e92447
commit 1479743e70
1 changed files with 18 additions and 18 deletions

View File

@ -76,13 +76,11 @@ NotificationsManager::postNotification(const QString &roomid,
"/org/freedesktop/Notifications", "/org/freedesktop/Notifications",
"org.freedesktop.Notifications"); "org.freedesktop.Notifications");
auto call = notifyApp.asyncCallWithArgumentList("Notify", argumentList); auto call = notifyApp.asyncCallWithArgumentList("Notify", argumentList);
auto watcher = new QDBusPendingCall{QDBusPendingReply{call}}; auto watcher = new QDBusPendingCallWatcher{QDBusPendingCall{QDBusPendingReply{call}}};
connect(watcher, connect(
&QDBusPendingCallWatcher::finished, watcher, &QDBusPendingCallWatcher::finished, this, [watcher, this, &roomid, &eventid]() {
this,
[watcher, this, &roomid, &eventid]() {
if (watcher->reply().type() == QDBusMessage::ErrorMessage) if (watcher->reply().type() == QDBusMessage::ErrorMessage)
qDebug() << "D-Bus Error:" << watcher.reply().errorMessage(); qDebug() << "D-Bus Error:" << watcher->reply().errorMessage();
else else
notificationIds[watcher->reply().arguments().first().toUInt()] = notificationIds[watcher->reply().arguments().first().toUInt()] =
roomEventId{roomid, eventid}; roomEventId{roomid, eventid};
@ -99,11 +97,13 @@ NotificationsManager::closeNotification(uint id)
static QDBusInterface closeCall("org.freedesktop.Notifications", static QDBusInterface closeCall("org.freedesktop.Notifications",
"/org/freedesktop/Notifications", "/org/freedesktop/Notifications",
"org.freedesktop.Notifications"); "org.freedesktop.Notifications");
QDBusMessage reply = auto call = closeCall.asyncCallWithArgumentList("CloseNotification", argumentList);
closeCall.callWithArgumentList(QDBus::AutoDetect, "CloseNotification", argumentList); auto watcher = new QDBusPendingCallWatcher{QDBusPendingCall{QDBusPendingReply{call}}};
if (reply.type() == QDBusMessage::ErrorMessage) { connect(watcher, &QDBusPendingCallWatcher::finished, this, [watcher, this]() {
qDebug() << "D-Bus Error:" << reply.errorMessage(); if (watcher->reply().type() == QDBusMessage::ErrorMessage) {
} qDebug() << "D-Bus Error:" << watcher->reply().errorMessage();
};
});
} }
void void