diff options
author | Javier <dev.git@javispedro.com> | 2015-03-31 02:38:50 +0200 |
---|---|---|
committer | Javier <dev.git@javispedro.com> | 2015-03-31 02:38:50 +0200 |
commit | 631af0284a651f1698e4796c2e39aabb83a3bfca (patch) | |
tree | c7a2e0f5a898c4a68aa9482757718364ba93f83f /saltoqd/notificationmanager.cpp | |
parent | 1a72dfb10bb0189e842c754b3550795538a79493 (diff) | |
download | saltoq-631af0284a651f1698e4796c2e39aabb83a3bfca.tar.gz saltoq-631af0284a651f1698e4796c2e39aabb83a3bfca.zip |
parse incoming card events
Diffstat (limited to 'saltoqd/notificationmanager.cpp')
-rw-r--r-- | saltoqd/notificationmanager.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/saltoqd/notificationmanager.cpp b/saltoqd/notificationmanager.cpp index c78fffb..f6b626f 100644 --- a/saltoqd/notificationmanager.cpp +++ b/saltoqd/notificationmanager.cpp @@ -14,7 +14,8 @@ NotificationManager::NotificationManager(CardManager *card, ToqManager *toq) : void NotificationManager::handleNotification(MonitoredNotification *n) { - Card *card = new Card(QString::number(qint64(n->id()))); + uint notificationId = n->id(); + Card *card = new Card(QString::number(qint64(notificationId))); card->setHeader(n->sender()); card->setTitle(n->summary()); @@ -25,15 +26,20 @@ void NotificationManager::handleNotification(MonitoredNotification *n) connect(n, &MonitoredNotification::closed, this, &NotificationManager::handleClosedNotification); + _cards.insert(notificationId, card); _deck->appendCard(card); } void NotificationManager::handleClosedNotification() { MonitoredNotification *n = static_cast<MonitoredNotification*>(sender()); - Card *card = _cards.take(n); + uint notificationId = n->id(); + Card *card = _cards.take(notificationId); if (card) { _deck->removeCard(card); card->deleteLater(); + } else { + qDebug() << "Notification" << notificationId << "does not have an attached card"; } + disconnect(n, 0, this, 0); } |