diff --git a/src/api/conversationmodel.h b/src/api/conversationmodel.h index 7a85f8b679244044fc553b97361b2a0caa5b7d0b..8b2857eea8461291b4fcdfc7362c516adc1b9b11 100644 --- a/src/api/conversationmodel.h +++ b/src/api/conversationmodel.h @@ -78,7 +78,7 @@ public: * Get a custom filtered set of conversations * @return conversations filtered */ - const ConversationQueue& getFilteredConversations(const profile::Type& filter = profile::Type::INVALID) const; + const ConversationQueue& getFilteredConversations(const profile::Type& filter = profile::Type::INVALID, bool forceUpdate = false) const; /** * Get the conversation at row in the filtered conversations * @param row diff --git a/src/conversationmodel.cpp b/src/conversationmodel.cpp index 500c0daeec30e3f4eb552d5808872a0438e6f880..20e898cd89d26eededbbd625eacafa5598a4a5ed 100644 --- a/src/conversationmodel.cpp +++ b/src/conversationmodel.cpp @@ -315,9 +315,9 @@ ConversationModel::allFilteredConversations() const } const ConversationModel::ConversationQueue& -ConversationModel::getFilteredConversations(const profile::Type& filter) const +ConversationModel::getFilteredConversations(const profile::Type& filter, bool forceUpdate) const { - if (pimpl_->customTypeFilter == filter && !pimpl_->dirtyConversations.second) + if (pimpl_->customTypeFilter == filter && !pimpl_->dirtyConversations.second && !forceUpdate) return pimpl_->customFilteredConversations; pimpl_->customTypeFilter = filter;