Display all empty chat rooms if option has been set (empty secure chat rooms were hide on restart)

This commit is contained in:
Julien Wadel 2022-12-01 15:54:39 +01:00
parent c594ed0315
commit 4a7caf7fc3

View file

@ -246,7 +246,17 @@ void TimelineListModel::updateTimelines () {
allChatRooms.remove_if([](std::shared_ptr<linphone::ChatRoom> chatRoom){
if( ChatRoomModel::isTerminated(chatRoom) && chatRoom->getUnreadMessagesCount() > 0)
chatRoom->markAsRead();
return chatRoom->getState() == linphone::ChatRoom::State::Deleted || (!chatRoom->hasCapability((int)linphone::ChatRoomCapabilities::Basic) && chatRoom->getConferenceAddress() && chatRoom->getHistoryEventsSize() == 0);
if(chatRoom->getState() == linphone::ChatRoom::State::Deleted)
return true;
if(!chatRoom->hasCapability((int)linphone::ChatRoomCapabilities::Basic)){
auto conferenceAddress = chatRoom->getConferenceAddress();
if( conferenceAddress && conferenceAddress->getDomain() == Constants::LinphoneDomain) {
QString conferenceAddressStr = Utils::coreStringToAppString(conferenceAddress->asStringUriOnly());
if( conferenceAddressStr.contains("conf-id"))
return true;
}
}
return false;
});
//Remove no more chat rooms