From aa74efdee77a0e2db1192fe999f647392346aabf Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Tue, 31 Mar 2026 22:20:37 +0300 Subject: [PATCH] [poll-create] Fixed wrong grabbed toggles state before show animation. --- Telegram/SourceFiles/boxes/create_poll_box.cpp | 14 ++++++++++++++ .../settings/detailed_settings_button.cpp | 4 ++++ .../settings/detailed_settings_button.h | 1 + 3 files changed, 19 insertions(+) diff --git a/Telegram/SourceFiles/boxes/create_poll_box.cpp b/Telegram/SourceFiles/boxes/create_poll_box.cpp index c45d1c7964..70599de3f4 100644 --- a/Telegram/SourceFiles/boxes/create_poll_box.cpp +++ b/Telegram/SourceFiles/boxes/create_poll_box.cpp @@ -3041,6 +3041,20 @@ object_ptr CreatePollBox::setupContent() { sendAction); addButton(tr::lng_cancel(), [=] { closeBox(); }); + if (showWhoVoted) { + showWhoVoted->finishAnimating(); + } + multiple->finishAnimating(); + if (addOptions) { + addOptions->finishAnimating(); + } + revoting->finishAnimating(); + shuffle->finishAnimating(); + quiz->finishAnimating(); + duration->finishAnimating(); + durationWrap->finishAnimating(); + hideResults->finishAnimating(); + return result; } diff --git a/Telegram/SourceFiles/settings/detailed_settings_button.cpp b/Telegram/SourceFiles/settings/detailed_settings_button.cpp index ec904543e4..7c305fed52 100644 --- a/Telegram/SourceFiles/settings/detailed_settings_button.cpp +++ b/Telegram/SourceFiles/settings/detailed_settings_button.cpp @@ -94,6 +94,10 @@ void DetailedSettingsButton::setToggleLocked(bool locked) { _toggle->setLocked(locked); } +void DetailedSettingsButton::finishAnimating() { + _toggle->finishAnimating(); +} + void DetailedSettingsButton::onStateChanged( State was, StateChangeSource source) { diff --git a/Telegram/SourceFiles/settings/detailed_settings_button.h b/Telegram/SourceFiles/settings/detailed_settings_button.h index f2854ed478..a5dfee47af 100644 --- a/Telegram/SourceFiles/settings/detailed_settings_button.h +++ b/Telegram/SourceFiles/settings/detailed_settings_button.h @@ -33,6 +33,7 @@ public: [[nodiscard]] rpl::producer toggledChanges() const; [[nodiscard]] rpl::producer> clickAreaEvents() const; void setToggleLocked(bool locked); + void finishAnimating(); protected: void onStateChanged(State was, StateChangeSource source) override;