diff --git a/Telegram/SourceFiles/data/data_chat_filters.cpp b/Telegram/SourceFiles/data/data_chat_filters.cpp index 770e6855a..02c308b38 100644 --- a/Telegram/SourceFiles/data/data_chat_filters.cpp +++ b/Telegram/SourceFiles/data/data_chat_filters.cpp @@ -246,6 +246,11 @@ not_null ChatFilters::chatsList(FilterId filterId) { return pointer.get(); } +void ChatFilters::clear() { + _chatsLists.clear(); + _list.clear(); +} + void ChatFilters::setPreloaded(const QVector &result) { _loadRequestId = -1; received(result); diff --git a/Telegram/SourceFiles/data/data_chat_filters.h b/Telegram/SourceFiles/data/data_chat_filters.h index b4637e0c2..4e2cf9cc0 100644 --- a/Telegram/SourceFiles/data/data_chat_filters.h +++ b/Telegram/SourceFiles/data/data_chat_filters.h @@ -113,6 +113,7 @@ public: void refreshHistory(not_null history); [[nodiscard]] not_null chatsList(FilterId filterId); + void clear(); const ChatFilter &applyUpdatedPinned( FilterId id, diff --git a/Telegram/SourceFiles/data/data_session.cpp b/Telegram/SourceFiles/data/data_session.cpp index 56b98568e..18b74ec05 100644 --- a/Telegram/SourceFiles/data/data_session.cpp +++ b/Telegram/SourceFiles/data/data_session.cpp @@ -388,6 +388,7 @@ void Session::clear() { for (const auto &[id, folder] : _folders) { folder->clearChatsList(); } + _chatsFilters->clear(); _histories->clearAll(); _webpages.clear(); _locations.clear();