mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
Correctly apply photos from "min" users.
This commit is contained in:
parent
54e76c0b71
commit
28be89f7c3
2 changed files with 7 additions and 1 deletions
|
@ -415,6 +415,7 @@ not_null<UserData*> Session::processUser(const MTPUser &data) {
|
||||||
| (!minimal
|
| (!minimal
|
||||||
? Flag::Contact
|
? Flag::Contact
|
||||||
| Flag::MutualContact
|
| Flag::MutualContact
|
||||||
|
| Flag::DiscardMinPhoto
|
||||||
: Flag());
|
: Flag());
|
||||||
const auto flagsSet = (data.is_deleted() ? Flag::Deleted : Flag())
|
const auto flagsSet = (data.is_deleted() ? Flag::Deleted : Flag())
|
||||||
| (data.is_verified() ? Flag::Verified : Flag())
|
| (data.is_verified() ? Flag::Verified : Flag())
|
||||||
|
@ -425,6 +426,7 @@ not_null<UserData*> Session::processUser(const MTPUser &data) {
|
||||||
| (!minimal
|
| (!minimal
|
||||||
? (data.is_contact() ? Flag::Contact : Flag())
|
? (data.is_contact() ? Flag::Contact : Flag())
|
||||||
| (data.is_mutual_contact() ? Flag::MutualContact : Flag())
|
| (data.is_mutual_contact() ? Flag::MutualContact : Flag())
|
||||||
|
| (data.is_apply_min_photo() ? Flag() : Flag::DiscardMinPhoto)
|
||||||
: Flag());
|
: Flag());
|
||||||
result->setFlags((result->flags() & ~flagsMask) | flagsSet);
|
result->setFlags((result->flags() & ~flagsMask) | flagsSet);
|
||||||
if (minimal) {
|
if (minimal) {
|
||||||
|
@ -510,7 +512,7 @@ not_null<UserData*> Session::processUser(const MTPUser &data) {
|
||||||
: result->nameOrPhone;
|
: result->nameOrPhone;
|
||||||
|
|
||||||
result->setName(fname, lname, pname, uname);
|
result->setName(fname, lname, pname, uname);
|
||||||
if (!minimal || data.is_apply_min_photo()) {
|
if (!minimal || result->applyMinPhoto()) {
|
||||||
if (const auto photo = data.vphoto()) {
|
if (const auto photo = data.vphoto()) {
|
||||||
result->setPhoto(*photo);
|
result->setPhoto(*photo);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -36,6 +36,7 @@ enum class UserDataFlag {
|
||||||
PhoneCallsPrivate = (1 << 9),
|
PhoneCallsPrivate = (1 << 9),
|
||||||
Support = (1 << 10),
|
Support = (1 << 10),
|
||||||
CanPinMessages = (1 << 11),
|
CanPinMessages = (1 << 11),
|
||||||
|
DiscardMinPhoto = (1 << 12),
|
||||||
};
|
};
|
||||||
inline constexpr bool is_flag_type(UserDataFlag) { return true; };
|
inline constexpr bool is_flag_type(UserDataFlag) { return true; };
|
||||||
using UserDataFlags = base::flags<UserDataFlag>;
|
using UserDataFlags = base::flags<UserDataFlag>;
|
||||||
|
@ -108,6 +109,9 @@ public:
|
||||||
// Duplicated in Data::CanWriteValue().
|
// Duplicated in Data::CanWriteValue().
|
||||||
return !isInaccessible() && !isRepliesChat();
|
return !isInaccessible() && !isRepliesChat();
|
||||||
}
|
}
|
||||||
|
[[nodiscard]] bool applyMinPhoto() const {
|
||||||
|
return !(flags() & UserDataFlag::DiscardMinPhoto);
|
||||||
|
}
|
||||||
|
|
||||||
[[nodiscard]] bool canShareThisContact() const;
|
[[nodiscard]] bool canShareThisContact() const;
|
||||||
[[nodiscard]] bool canAddContact() const {
|
[[nodiscard]] bool canAddContact() const {
|
||||||
|
|
Loading…
Add table
Reference in a new issue