From a52bb216066d85ae0de2f52b0063b4fed6234b2b Mon Sep 17 00:00:00 2001 From: John Preston Date: Fri, 3 Feb 2023 09:59:28 +0400 Subject: [PATCH] Fix activating account more than once. --- Telegram/SourceFiles/main/main_domain.cpp | 3 +++ .../SourceFiles/settings/settings_information.cpp | 12 ++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Telegram/SourceFiles/main/main_domain.cpp b/Telegram/SourceFiles/main/main_domain.cpp index 20cb26c368..9e237dfe99 100644 --- a/Telegram/SourceFiles/main/main_domain.cpp +++ b/Telegram/SourceFiles/main/main_domain.cpp @@ -442,6 +442,9 @@ void Domain::maybeActivate(not_null account) { } void Domain::activate(not_null account) { + if (const auto window = Core::App().separateWindowForAccount(account)) { + window->activate(); + } if (_active.current() == account.get()) { return; } diff --git a/Telegram/SourceFiles/settings/settings_information.cpp b/Telegram/SourceFiles/settings/settings_information.cpp index 3c244801cb..8f49315260 100644 --- a/Telegram/SourceFiles/settings/settings_information.cpp +++ b/Telegram/SourceFiles/settings/settings_information.cpp @@ -897,10 +897,14 @@ void AccountsList::rebuild() { Core::App().domain().maybeActivate(account); } }; - base::call_delayed( - st::defaultRippleAnimation.hideDuration, - account, - std::move(activate)); + if (Core::App().separateWindowForAccount(account)) { + activate(); + } else { + base::call_delayed( + st::defaultRippleAnimation.hideDuration, + account, + std::move(activate)); + } }; button.reset(inner->add(MakeAccountButton( inner,