an idea how to manage info object better

This commit is contained in:
Blue 2023-03-01 22:32:41 +03:00
parent ec362cef55
commit 6f32e99593
Signed by untrusted user: blue
GPG key ID: 9B203B252A63EE38
12 changed files with 390 additions and 63 deletions

View file

@ -101,7 +101,7 @@ void Core::VCardHandler::onVCardReceived(const QXmppVCardIq& card) {
}
Shared::Info info(jid, Shared::EntryType::contact);
info.vcard = item->handleResponseVCard(card, resource);
item->handleResponseVCard(card, resource, info.getVCardRef());
emit acc->infoReady(info);
}
@ -187,14 +187,15 @@ void Core::VCardHandler::onOwnVCardReceived(const QXmppVCardIq& card) {
ownVCardRequestInProgress = false;
Shared::Info info(acc->getBareJid(), Shared::EntryType::ownAccount, true);
initializeVCard(info.vcard, card);
Shared::Info info(acc->getBareJid(), Shared::EntryType::ownAccount);
Shared::VCard& vCard = info.getVCardRef();
initializeVCard(vCard, card);
if (avatarType.size() > 0) {
info.vcard.setAvatarType(Shared::Avatar::valid);
info.vcard.setAvatarPath(path + "avatar." + avatarType);
vCard.setAvatarType(Shared::Avatar::valid);
vCard.setAvatarPath(path + "avatar." + avatarType);
} else {
info.vcard.setAvatarType(Shared::Avatar::empty);
vCard.setAvatarType(Shared::Avatar::empty);
}
emit acc->infoReady(info);