From aa8423649f1e847e5a441d5e13e4dcea9697897a Mon Sep 17 00:00:00 2001 From: RadRussianRus Date: Thu, 2 Jul 2020 08:38:39 +0300 Subject: [PATCH] Fixes for three-dots menu in Settings * Show "Add account" only on main settings page * Add missing warning about too many accounts --- .../SourceFiles/settings/settings_common.cpp | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/Telegram/SourceFiles/settings/settings_common.cpp b/Telegram/SourceFiles/settings/settings_common.cpp index 543b3fb02..a505f7beb 100644 --- a/Telegram/SourceFiles/settings/settings_common.cpp +++ b/Telegram/SourceFiles/settings/settings_common.cpp @@ -202,11 +202,24 @@ void FillMenu( tr::lng_settings_bg_theme_create(tr::now), [=] { window->show(Box(Window::Theme::CreateBox, window)); }); } else { - const auto &list = Core::App().domain().accounts(); - if (list.size() < ::Main::Domain::kMaxAccounts) { - addAction(tr::lng_menu_add_account(tr::now), [=] { - Core::App().domain().addActivated(MTP::Environment{}); - }); + if (type != Type::Kotato) { + const auto &list = Core::App().domain().accounts(); + if (list.size() < ::Main::Domain::kMaxAccountsWarn) { + addAction(tr::lng_menu_add_account(tr::now), [=] { + Core::App().domain().addActivated(MTP::Environment{}); + }); + } else if (list.size() < ::Main::Domain::kMaxAccounts) { + addAction(tr::lng_menu_add_account(tr::now), [=] { + Ui::show( + Box( + tr::ktg_too_many_accounts_warning(tr::now), + tr::ktg_account_add_anyway(tr::now), + [=] { + Core::App().domain().addActivated(MTP::Environment{}); + }), + Ui::LayerOption::KeepOther); + }); + } } const auto customSettingsFile = cWorkingDir() + "tdata/kotato-settings-custom.json"; if (type != Type::Kotato && !controller->session().supportMode()) {