mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-07-25 23:13:11 +02:00
Try reducing self userFull requests.
This commit is contained in:
parent
09f106bd49
commit
a7e87cc722
4 changed files with 18 additions and 11 deletions
|
@ -424,7 +424,7 @@ void Premium::requestPremiumRequiredSlice() {
|
|||
constexpr auto hasPrem = Flag::HasRequirePremiumToWrite;
|
||||
constexpr auto hasStars = Flag::HasStarsPerMessage;
|
||||
user->setStarsPerMessage(stars);
|
||||
user->setFlags((user->flags() & ~(me | hasPrem | hasStars))
|
||||
user->setFlags((user->flags() & ~me)
|
||||
| known
|
||||
| (requirePremium ? (me | hasPrem) : Flag())
|
||||
| (stars ? hasStars : Flag()));
|
||||
|
|
|
@ -1267,7 +1267,7 @@ void ApplyChannelUpdate(
|
|||
| Flag::CanViewCreditsRevenue
|
||||
| Flag::StargiftsAvailable
|
||||
| Flag::PaidMessagesAvailable
|
||||
| Flag::HasStarsPerMessage
|
||||
| (channel->starsPerMessage() ? Flag::HasStarsPerMessage : Flag())
|
||||
| Flag::StarsPerMessageKnown;
|
||||
channel->setFlags((channel->flags() & ~mask)
|
||||
| (update.is_can_set_username() ? Flag::CanSetUsername : Flag())
|
||||
|
|
|
@ -545,6 +545,14 @@ not_null<UserData*> Session::processUser(const MTPUser &data) {
|
|||
|
||||
const auto canShareThisContact = result->canShareThisContactFast();
|
||||
|
||||
const auto hasRequirePremiumToWrite
|
||||
= data.is_contact_require_premium();
|
||||
const auto hasStarsPerMessage
|
||||
= data.vsend_paid_messages_stars().has_value();
|
||||
if (!hasStarsPerMessage) {
|
||||
result->setStarsPerMessage(0);
|
||||
}
|
||||
|
||||
using Flag = UserDataFlag;
|
||||
const auto flagsMask = Flag::Deleted
|
||||
| Flag::Verified
|
||||
|
@ -556,19 +564,15 @@ not_null<UserData*> Session::processUser(const MTPUser &data) {
|
|||
| Flag::HasRequirePremiumToWrite
|
||||
| Flag::HasStarsPerMessage
|
||||
| Flag::MessageMoneyRestrictionsKnown
|
||||
| (!hasRequirePremiumToWrite
|
||||
? Flag::RequiresPremiumToWrite
|
||||
: Flag())
|
||||
| (!minimal
|
||||
? Flag::Contact
|
||||
| Flag::MutualContact
|
||||
| Flag::DiscardMinPhoto
|
||||
| Flag::StoriesHidden
|
||||
: Flag());
|
||||
const auto hasRequirePremiumToWrite
|
||||
= data.is_contact_require_premium();
|
||||
const auto hasStarsPerMessage
|
||||
= data.vsend_paid_messages_stars().has_value();
|
||||
if (!hasStarsPerMessage) {
|
||||
result->setStarsPerMessage(0);
|
||||
}
|
||||
const auto storiesState = minimal
|
||||
? std::optional<Data::Stories::PeerSourceState>()
|
||||
: data.is_stories_unavailable()
|
||||
|
|
|
@ -719,7 +719,10 @@ void ApplyUserUpdate(not_null<UserData*> user, const MTPDuserFull &update) {
|
|||
| Flag::CanPinMessages
|
||||
| Flag::VoiceMessagesForbidden
|
||||
| Flag::ReadDatesPrivate
|
||||
| Flag::HasStarsPerMessage
|
||||
| (update.is_contact_require_premium()
|
||||
? Flag::HasRequirePremiumToWrite
|
||||
: Flag())
|
||||
| (user->starsPerMessage() ? Flag::HasStarsPerMessage : Flag())
|
||||
| Flag::MessageMoneyRestrictionsKnown
|
||||
| Flag::RequiresPremiumToWrite;
|
||||
user->setFlags((user->flags() & ~mask)
|
||||
|
@ -736,7 +739,7 @@ void ApplyUserUpdate(not_null<UserData*> user, const MTPDuserFull &update) {
|
|||
| (user->starsPerMessage() ? Flag::HasStarsPerMessage : Flag())
|
||||
| Flag::MessageMoneyRestrictionsKnown
|
||||
| (update.is_contact_require_premium()
|
||||
? Flag::RequiresPremiumToWrite
|
||||
? (Flag::RequiresPremiumToWrite | Flag::HasRequirePremiumToWrite)
|
||||
: Flag()));
|
||||
user->setIsBlocked(update.is_blocked());
|
||||
user->setCallsStatus(update.is_phone_calls_private()
|
||||
|
|
Loading…
Add table
Reference in a new issue