diff --git a/Telegram/SourceFiles/window/window_filters_menu.cpp b/Telegram/SourceFiles/window/window_filters_menu.cpp index d40d65e1e..b1ea3875b 100644 --- a/Telegram/SourceFiles/window/window_filters_menu.cpp +++ b/Telegram/SourceFiles/window/window_filters_menu.cpp @@ -382,6 +382,12 @@ void FiltersMenu::showAllMenu(QPoint position) { } const auto defaultFilterId = _session->session().account().defaultFilterId(); _popupMenu = base::make_unique_q(_all); + const auto addAction = [&](const QString &text, Fn callback) { + return _popupMenu->addAction( + text, + crl::guard(&_outer, std::move(callback))); + }; + MenuAddMarkAsReadAllChatsAction(&_session->session().data(), addAction); _popupMenu->addAction( tr::ktg_filters_context_edit_all(tr::now), crl::guard(&_outer, [=] { _session->showSettings(Settings::Type::Folders); })); diff --git a/Telegram/SourceFiles/window/window_main_menu.cpp b/Telegram/SourceFiles/window/window_main_menu.cpp index 173906e2f..a279001a2 100644 --- a/Telegram/SourceFiles/window/window_main_menu.cpp +++ b/Telegram/SourceFiles/window/window_main_menu.cpp @@ -278,6 +278,7 @@ void MainMenu::AccountButton::paintEvent(QPaintEvent *e) { } void MainMenu::AccountButton::contextMenuEvent(QContextMenuEvent *e) { + /* if (!_menu && IsAltShift(e->modifiers())) { _menu = base::make_unique_q(this); const auto addAction = [&](const QString &text, Fn callback) { @@ -289,13 +290,23 @@ void MainMenu::AccountButton::contextMenuEvent(QContextMenuEvent *e) { _menu->popup(QCursor::pos()); return; } - if (&_session->account() == &Core::App().activeAccount() || _menu) { + */ + if (_menu) { return; } + const auto isActiveAccount = &_session->account() == &Core::App().activeAccount(); _menu = base::make_unique_q(this); - _menu->addAction(tr::lng_menu_activate(tr::now), crl::guard(this, [=] { - Core::App().domain().activate(&_session->account()); - })); + if (!isActiveAccount) { + _menu->addAction(tr::lng_menu_activate(tr::now), crl::guard(this, [=] { + Core::App().domain().activate(&_session->account()); + })); + } + const auto addAction = [&](const QString &text, Fn callback) { + return _menu->addAction( + text, + crl::guard(this, std::move(callback))); + }; + MenuAddMarkAsReadAllChatsAction(&_session->data(), addAction); _menu->addAction(tr::lng_settings_logout(tr::now), crl::guard(this, [=] { const auto session = _session; const auto callback = [=](Fn &&close) {