Set premium grace suggestion as top priority.

This commit is contained in:
23rd 2025-04-18 12:01:07 +03:00 committed by John Preston
parent b1c5c53687
commit 868c7b170e

View file

@ -115,6 +115,34 @@ rpl::producer<Ui::SlideWrap<Ui::RpWidget>*> TopBarSuggestionValue(
using RightIcon = TopBarSuggestionContent::RightIcon; using RightIcon = TopBarSuggestionContent::RightIcon;
const auto config = &session->appConfig(); const auto config = &session->appConfig();
if (session->premiumCanBuy() if (session->premiumCanBuy()
&& config->suggestionCurrent(kSugPremiumGrace.utf8())) {
content->setRightIcon(RightIcon::Close);
content->setClickedCallback([=] {
const auto controller = FindSessionController(parent);
if (!controller) {
return;
}
UrlClickHandler::Open(
u"https://t.me/premiumbot?start=status"_q,
QVariant::fromValue(ClickHandlerContext{
.sessionWindow = base::make_weak(controller),
}));
});
content->setHideCallback([=] {
config->dismissSuggestion(kSugPremiumGrace.utf8());
repeat(repeat);
});
content->setContent(
tr::lng_dialogs_suggestions_premium_grace_title(
tr::now,
Ui::Text::Bold),
tr::lng_dialogs_suggestions_premium_grace_about(
tr::now,
TextWithEntities::Simple));
state->desiredWrapToggle.force_assign(
Toggle{ true, anim::type::normal });
return;
} else if (session->premiumCanBuy()
&& config->suggestionCurrent(kSugLowCreditsSubs.utf8())) { && config->suggestionCurrent(kSugLowCreditsSubs.utf8())) {
state->creditsHistory = std::make_unique<Api::CreditsHistory>( state->creditsHistory = std::make_unique<Api::CreditsHistory>(
session->user(), session->user(),
@ -189,34 +217,6 @@ rpl::producer<Ui::SlideWrap<Ui::RpWidget>*> TopBarSuggestionValue(
}, state->creditsLifetime); }, state->creditsLifetime);
return; return;
} else if (session->premiumCanBuy()
&& config->suggestionCurrent(kSugPremiumGrace.utf8())) {
content->setRightIcon(RightIcon::Close);
content->setClickedCallback([=] {
const auto controller = FindSessionController(parent);
if (!controller) {
return;
}
UrlClickHandler::Open(
u"https://t.me/premiumbot?start=status"_q,
QVariant::fromValue(ClickHandlerContext{
.sessionWindow = base::make_weak(controller),
}));
});
content->setHideCallback([=] {
config->dismissSuggestion(kSugPremiumGrace.utf8());
repeat(repeat);
});
content->setContent(
tr::lng_dialogs_suggestions_premium_grace_title(
tr::now,
Ui::Text::Bold),
tr::lng_dialogs_suggestions_premium_grace_about(
tr::now,
TextWithEntities::Simple));
state->desiredWrapToggle.force_assign(
Toggle{ true, anim::type::normal });
return;
} else if (session->premiumCanBuy() } else if (session->premiumCanBuy()
&& config->suggestionCurrent(kSugBirthdayContacts.utf8())) { && config->suggestionCurrent(kSugBirthdayContacts.utf8())) {
session->data().contactBirthdays( session->data().contactBirthdays(