From 1647991f6a55c8a3ff834ef3f6a621e0ec56ab4b Mon Sep 17 00:00:00 2001 From: John Preston Date: Sat, 9 Mar 2024 11:06:43 +0400 Subject: [PATCH] Fix autologin token account selection. --- Telegram/SourceFiles/core/ui_integration.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Telegram/SourceFiles/core/ui_integration.cpp b/Telegram/SourceFiles/core/ui_integration.cpp index ba2593e7b..e6b62203d 100644 --- a/Telegram/SourceFiles/core/ui_integration.cpp +++ b/Telegram/SourceFiles/core/ui_integration.cpp @@ -50,8 +50,13 @@ const auto kBadPrefix = u"http://"_q; [[nodiscard]] QString UrlWithAutoLoginToken( const QString &url, QUrl parsed, - const QString &domain) { - const auto &active = Core::App().activeAccount(); + const QString &domain, + QVariant context) { + const auto my = context.value(); + const auto window = my.sessionWindow.get(); + const auto &active = window + ? window->session().account() + : Core::App().activeAccount(); const auto token = active.mtp().configValues().autologinToken; const auto domains = active.appConfig().get>( "autologin_domains", @@ -238,7 +243,8 @@ bool UiIntegration::handleUrlClick( const auto domain = DomainForAutoLogin(parsed); const auto skip = context.value().skipBotAutoLogin; if (skip || !BotAutoLogin(url, domain, context)) { - File::OpenUrl(UrlWithAutoLoginToken(url, std::move(parsed), domain)); + File::OpenUrl( + UrlWithAutoLoginToken(url, std::move(parsed), domain, context)); } return true; }