From 31d09dbd68f9fbc127c78fdedae9d446c5a8db60 Mon Sep 17 00:00:00 2001 From: Konstantinos Sideris Date: Sun, 15 Jul 2018 20:32:22 +0300 Subject: De-duplicate the m.room.encryption event --- src/timeline/TimelineView.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/timeline/TimelineView.cc b/src/timeline/TimelineView.cc index 0204bbd2..207844e4 100644 --- a/src/timeline/TimelineView.cc +++ b/src/timeline/TimelineView.cc @@ -221,9 +221,15 @@ TimelineView::parseMessageEvent(const mtx::events::collections::TimelineEvents & return nullptr; } else if (mpark::holds_alternative>(event)) { - auto msg = mpark::get>(event); + auto msg = mpark::get>(event); + auto event_id = QString::fromStdString(msg.event_id); + + if (eventIds_.contains(event_id)) + return nullptr; + auto item = new InfoMessage(tr("Encryption is enabled"), this); item->saveDatetime(QDateTime::fromMSecsSinceEpoch(msg.origin_server_ts)); + eventIds_[event_id] = item; return item; } else if (mpark::holds_alternative>(event)) { @@ -993,7 +999,7 @@ TimelineView::removeEvent(const QString &event_id) } QWidget * -TimelineView::relativeWidget(TimelineItem *item, int dt) const +TimelineView::relativeWidget(QWidget *item, int dt) const { int pos = scroll_layout_->indexOf(item); -- cgit 1.4.1