diff --git a/components/channels.cpp b/components/channels.cpp index 4a3a8f1..98604d7 100644 --- a/components/channels.cpp +++ b/components/channels.cpp @@ -337,6 +337,14 @@ void ChannelList::OnThreadListSync(const ThreadListSyncData &data) { m_model->erase(iter); } } + + // delete all archived threads + for (auto thread : data.Threads) { + if (thread.ThreadMetadata->IsArchived) { + if (auto iter = GetIteratorForChannelFromID(thread.ID)) + m_model->erase(iter); + } + } } void ChannelList::DeleteThreadRow(Snowflake id) {