From df38b4ebc3984937822faa354bf32acdcb58152f Mon Sep 17 00:00:00 2001 From: Andreas Traczyk Date: Tue, 19 Nov 2019 13:44:36 -0500 Subject: [PATCH] notifications: prevent notifications for outgoing calls Change-Id: I98df72f4e3a4e710dc2279b6b5388ab613254338 --- callwidget.cpp | 9 +++++---- callwidget.h | 2 +- utils.cpp | 12 +++++------- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/callwidget.cpp b/callwidget.cpp index c95e607..aa58ff5 100644 --- a/callwidget.cpp +++ b/callwidget.cpp @@ -213,7 +213,7 @@ CallWidget::CallWidget(QWidget* parent) : [this](const std::string& accountId, const std::string& conversation, uint64_t interactionId, const interaction::Info& interaction) { if (LRCInstance::getCurrAccId() != accountId) { - onIncomingMessage(accountId, conversation, interactionId, interaction); + onNewInteraction(accountId, conversation, interactionId, interaction); } }); @@ -304,7 +304,7 @@ CallWidget::getLeftPanelWidth() } void -CallWidget::onIncomingMessage(const std::string& accountId, const std::string& convUid, +CallWidget::onNewInteraction(const std::string& accountId, const std::string& convUid, uint64_t interactionId, const interaction::Info& interaction) { Q_UNUSED(interactionId); @@ -315,7 +315,8 @@ CallWidget::onIncomingMessage(const std::string& accountId, const std::string& c if (conversation.uid.empty()) { return; } - if (!QApplication::focusWidget() || LRCInstance::getCurrAccId() != accountId) { + if (!interaction.authorUri.empty() && + (!QApplication::focusWidget() || LRCInstance::getCurrAccId() != accountId)) { auto bestName = Utils::bestNameForConversation(conversation, *convModel); Utils::showSystemNotification(this, QString::fromStdString(bestName), @@ -1164,7 +1165,7 @@ CallWidget::connectConversationModel() [this](const std::string& convUid, uint64_t interactionId, const lrc::api::interaction::Info& interaction) { auto accountId = LRCInstance::getCurrAccId(); - onIncomingMessage(accountId, convUid, interactionId, interaction); + onNewInteraction(accountId, convUid, interactionId, interaction); } ); interactionRemovedConnection_ = QObject::connect( diff --git a/callwidget.h b/callwidget.h index fe05fa6..64ee7a4 100644 --- a/callwidget.h +++ b/callwidget.h @@ -105,7 +105,7 @@ private slots: private: void callTerminating(const std::string& callid); - void onIncomingMessage(const std::string& accountId, const std::string& convUid, + void onNewInteraction(const std::string& accountId, const std::string& convUid, uint64_t interactionId, const lrc::api::interaction::Info& interaction); void conversationsButtonClicked(); void invitationsButtonClicked(); diff --git a/utils.cpp b/utils.cpp index d9e59d8..6e3a3de 100644 --- a/utils.cpp +++ b/utils.cpp @@ -272,20 +272,18 @@ Utils::setStackWidget(QStackedWidget* stack, QWidget* widget) } } -void Utils::showSystemNotification(QWidget* widget, const QString & message, long delay) +void Utils::showSystemNotification(QWidget* widget, const QString& message, long delay) { GlobalSystemTray::instance().showMessage(message, "", QIcon(":images/jami.png")); QApplication::alert(widget, delay); } void Utils::showSystemNotification(QWidget* widget, - const QString & sender, - const QString & message, - long delay) + const QString & sender, + const QString & message, + long delay) { - QIcon(); - GlobalSystemTray::instance() - .showMessage(sender, message, QIcon(":images/jami.png")); + GlobalSystemTray::instance().showMessage(sender, message, QIcon(":images/jami.png")); QApplication::alert(widget, delay); } -- 2.22.0