mirror of
https://github.com/AyuGram/AyuGramDesktop.git
synced 2025-06-05 06:33:57 +02:00
Respected pause reason in mini stars from section for main settings.
This commit is contained in:
parent
22ec7a6d75
commit
f90a4db569
1 changed files with 17 additions and 3 deletions
|
@ -278,7 +278,8 @@ void Cover::refreshUsernameGeometry(int newWidth) {
|
||||||
|
|
||||||
[[nodiscard]] not_null<Ui::SettingsButton*> AddPremiumStar(
|
[[nodiscard]] not_null<Ui::SettingsButton*> AddPremiumStar(
|
||||||
not_null<Ui::SettingsButton*> button,
|
not_null<Ui::SettingsButton*> button,
|
||||||
bool credits) {
|
bool credits,
|
||||||
|
Fn<bool()> isPaused) {
|
||||||
const auto stops = credits
|
const auto stops = credits
|
||||||
? Ui::Premium::CreditsIconGradientStops()
|
? Ui::Premium::CreditsIconGradientStops()
|
||||||
: Ui::Premium::ButtonGradientStops();
|
: Ui::Premium::ButtonGradientStops();
|
||||||
|
@ -293,8 +294,15 @@ void Cover::refreshUsernameGeometry(int newWidth) {
|
||||||
false);
|
false);
|
||||||
ministars->setColorOverride(stops);
|
ministars->setColorOverride(stops);
|
||||||
|
|
||||||
|
const auto isPausedValue
|
||||||
|
= button->lifetime().make_state<rpl::variable<bool>>(isPaused());
|
||||||
|
isPausedValue->value() | rpl::start_with_next([=](bool value) {
|
||||||
|
ministars->setPaused(value);
|
||||||
|
}, ministarsContainer->lifetime());
|
||||||
|
|
||||||
ministarsContainer->paintRequest(
|
ministarsContainer->paintRequest(
|
||||||
) | rpl::start_with_next([=] {
|
) | rpl::start_with_next([=] {
|
||||||
|
(*isPausedValue) = isPaused();
|
||||||
auto p = QPainter(ministarsContainer);
|
auto p = QPainter(ministarsContainer);
|
||||||
{
|
{
|
||||||
constexpr auto kScale = 0.35;
|
constexpr auto kScale = 0.35;
|
||||||
|
@ -499,12 +507,17 @@ void SetupPremium(
|
||||||
Ui::AddDivider(container);
|
Ui::AddDivider(container);
|
||||||
Ui::AddSkip(container);
|
Ui::AddSkip(container);
|
||||||
|
|
||||||
|
const auto isPaused = Window::PausedIn(
|
||||||
|
controller,
|
||||||
|
Window::GifPauseReason::Any);
|
||||||
|
|
||||||
AddPremiumStar(
|
AddPremiumStar(
|
||||||
AddButtonWithIcon(
|
AddButtonWithIcon(
|
||||||
container,
|
container,
|
||||||
tr::lng_premium_summary_title(),
|
tr::lng_premium_summary_title(),
|
||||||
st::settingsButton),
|
st::settingsButton),
|
||||||
false
|
false,
|
||||||
|
isPaused
|
||||||
)->addClickHandler([=] {
|
)->addClickHandler([=] {
|
||||||
controller->setPremiumRef("settings");
|
controller->setPremiumRef("settings");
|
||||||
showOther(PremiumId());
|
showOther(PremiumId());
|
||||||
|
@ -522,7 +535,8 @@ void SetupPremium(
|
||||||
: QString();
|
: QString();
|
||||||
}),
|
}),
|
||||||
st::settingsButton),
|
st::settingsButton),
|
||||||
true
|
true,
|
||||||
|
isPaused
|
||||||
)->addClickHandler([=] {
|
)->addClickHandler([=] {
|
||||||
controller->setPremiumRef("settings");
|
controller->setPremiumRef("settings");
|
||||||
showOther(CreditsId());
|
showOther(CreditsId());
|
||||||
|
|
Loading…
Add table
Reference in a new issue