diff --git a/.gitignore b/.gitignore index 6d1786795fbf210a069891975c6606c58c2999fd..5f6725dbccc66ae71829c53a368f3b6ea48bd265 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ cscope* /.ccls-cache /.exrc .gdb_history +.hunter # GTAGS GTAGS @@ -70,7 +71,8 @@ install_manifest.txt .LSOverride # Icon must end with two \r -Icon +Icon + # Thumbnails ._* diff --git a/src/timeline/TimelineModel.cpp b/src/timeline/TimelineModel.cpp index ff1f324e17339977d4930eb3b9fc78254d105a5a..75819532bfb9fcc8256f6bda42e427d8efba80fe 100644 --- a/src/timeline/TimelineModel.cpp +++ b/src/timeline/TimelineModel.cpp @@ -514,6 +514,12 @@ TimelineModel::updateLastMessage() { // Get the user setting to show decrypted messages in side bar bool decrypt = QSettings().value("user/decrypt_sidebar", true).toBool(); + updateLastMessage(decrypt); +} + +void +TimelineModel::updateLastMessage(bool decrypt) +{ for (auto it = eventOrder.begin(); it != eventOrder.end(); ++it) { auto event = events.value(*it); if (auto e = std::get_if<mtx::events::EncryptedEvent<mtx::events::msg::Encrypted>>( diff --git a/src/timeline/TimelineModel.h b/src/timeline/TimelineModel.h index 98b183f6918cba22becb542c52d08a55c0f12579..135b31ffc75e97a59c0a18ac2e2cb6a2c486f9c9 100644 --- a/src/timeline/TimelineModel.h +++ b/src/timeline/TimelineModel.h @@ -189,7 +189,7 @@ public: Q_INVOKABLE void cacheMedia(QString eventId); Q_INVOKABLE bool saveMedia(QString eventId) const; - void updateLastMessage(); + void updateLastMessage(bool); void addEvents(const mtx::responses::Timeline &events); template<class T> void sendMessage(const T &msg); @@ -259,6 +259,7 @@ private: const mtx::responses::ClaimKeys &res, mtx::http::RequestErr err); void readEvent(const std::string &id); + void updateLastMessage(); QHash<QString, mtx::events::collections::TimelineEvents> events; QSet<QString> read; diff --git a/src/timeline/TimelineViewManager.cpp b/src/timeline/TimelineViewManager.cpp index 4562dd67b77e40c2292d81adc449a7d597ecadbd..3c870e36349ac59f056578d6b9ffdeb38f171512 100644 --- a/src/timeline/TimelineViewManager.cpp +++ b/src/timeline/TimelineViewManager.cpp @@ -19,12 +19,13 @@ Q_DECLARE_METATYPE(mtx::events::collections::TimelineEvents) void TimelineViewManager::updateEncryptedDescriptions() { + auto decrypt = settings->isDecryptSidebarEnabled(); QHash<QString, QSharedPointer<TimelineModel>>::iterator i; for (i = models.begin(); i != models.end(); ++i) { auto ptr = i.value(); if (!ptr.isNull()) { - ptr->updateLastMessage(); + ptr->updateLastMessage(decrypt); } } }