1
0
Fork 0
mirror of https://git.jami.net/savoirfairelinux/jami-client-qt.git synced 2025-08-04 06:45:45 +02:00

contactmodel: track presence after accepting request

This was broken when passing to only conversation's requests with
an un-needed condition

Change-Id: Ibe422474037c60ede21425b016017615d1bbf0f5
This commit is contained in:
Sébastien Blin 2023-01-23 16:49:45 -05:00
parent 7a9d0699dd
commit ebea6d9d65

View file

@ -782,16 +782,9 @@ ContactModelPimpl::slotContactAdded(const QString& accountId,
if (accountId != linked.owner.id)
return;
auto contact = contacts.find(contactUri);
if (contact != contacts.end()) {
if (contact->profileInfo.type == profile::Type::PENDING) {
if (contact != contacts.end() && contact->profileInfo.type == profile::Type::PENDING)
Q_EMIT behaviorController.trustRequestTreated(linked.owner.id, contactUri);
} else if (contact->profileInfo.type == profile::Type::JAMI && !contact->isBanned
&& confirmed) {
// This means that the peer accepted the trust request. We don't need to re-add the
// contact a second time (and this reset the presence to false).
return;
}
}
// for jams account we already have profile with avatar, use it to save to vCard
bool isJamsAccount = !linked.owner.confProperties.managerUri.isEmpty();
if (isJamsAccount) {
@ -925,7 +918,6 @@ ContactModelPimpl::addToContacts(const QString& contactUri,
if (!lrc::api::Lrc::cacheAvatars.load())
contactInfo.profileInfo.avatar.clear();
// lookup address in case of RING contact
if (type == profile::Type::JAMI) {
ConfigurationManager::instance().lookupAddress(linked.owner.id, "", contactUri);
PresenceManager::instance().subscribeBuddy(linked.owner.id, contactUri, !banned);