diff options
Diffstat (limited to 'src/notifications/ManagerMac.cpp')
-rw-r--r-- | src/notifications/ManagerMac.cpp | 64 |
1 files changed, 32 insertions, 32 deletions
diff --git a/src/notifications/ManagerMac.cpp b/src/notifications/ManagerMac.cpp index e22ae52d..627e9315 100644 --- a/src/notifications/ManagerMac.cpp +++ b/src/notifications/ManagerMac.cpp @@ -22,6 +22,35 @@ formatNotification(const mtx::responses::Notification ¬ification) return utils::stripReplyFallbacks(notification.event, {}, {}).quoted_body; } +NotificationsManager::NotificationsManager(QObject *parent) + : QObject(parent) +{ + // Putting these here to pass along since I'm not sure how + // our translate step interacts with .mm files + respondStr = QObject::tr("Respond"); + sendStr = QObject::tr("Send"); + placeholder = QObject::tr("Write a message..."); + + connect( + this, + &NotificationsManager::systemPostNotificationCb, + this, + [this](const QString &room_id, + const QString &event_id, + const QString &roomName, + const QString &text, + const QImage &) { + objCxxPostNotification(roomName, + room_id, + event_id, + text, + /*const QString &informativeText*/ "", + "", + true); + }, + Qt::QueuedConnection); +} + void NotificationsManager::postNotification(const mtx::responses::Notification ¬ification, const QImage &icon) @@ -40,12 +69,6 @@ NotificationsManager::postNotification(const mtx::responses::Notification ¬if ¬ification.event) != nullptr; const auto isReply = utils::isReply(notification.event); - // Putting these here to pass along since I'm not sure how - // our translate step interacts with .mm files - const auto respondStr = QObject::tr("Respond"); - const auto sendStr = QObject::tr("Send"); - const auto placeholder = QObject::tr("Write a message..."); - auto playSound = false; if (std::find(notification.actions.begin(), @@ -59,16 +82,7 @@ NotificationsManager::postNotification(const mtx::responses::Notification ¬if const QString messageInfo = (isReply ? tr("%1 replied with an encrypted message") : tr("%1 sent an encrypted message")) .arg(sender); - objCxxPostNotification(room_name, - room_id, - event_id, - messageInfo, - "", - "", - respondStr, - sendStr, - placeholder, - playSound); + objCxxPostNotification(room_name, room_id, event_id, messageInfo, "", "", playSound); } else { const QString messageInfo = (isReply ? tr("%1 replied to a message") : tr("%1 sent a message")).arg(sender); @@ -76,25 +90,14 @@ NotificationsManager::postNotification(const mtx::responses::Notification ¬if MxcImageProvider::download( QString::fromStdString(mtx::accessors::url(notification.event)).remove("mxc://"), QSize(200, 80), - [this, - notification, - room_name, - room_id, - event_id, - messageInfo, - respondStr, - sendStr, - placeholder, - playSound](QString, QSize, QImage, QString imgPath) { + [this, notification, room_name, room_id, event_id, messageInfo, playSound]( + QString, QSize, QImage, QString imgPath) { objCxxPostNotification(room_name, room_id, event_id, messageInfo, formatNotification(notification), imgPath, - respondStr, - sendStr, - placeholder, playSound); }); else @@ -104,9 +107,6 @@ NotificationsManager::postNotification(const mtx::responses::Notification ¬if messageInfo, formatNotification(notification), "", - respondStr, - sendStr, - placeholder, playSound); } } |