From 3ebb9af8f84f4dc183af6f2e01bd1ee13753b381 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Sun, 20 Feb 2022 14:00:36 +0300 Subject: [PATCH] Removed Ui::hideSettingsAndLayer(). --- Telegram/SourceFiles/boxes/abstract_box.cpp | 6 ------ Telegram/SourceFiles/boxes/abstract_box.h | 1 - .../boxes/peers/edit_peer_permissions_box.cpp | 9 +++++++-- Telegram/SourceFiles/boxes/sticker_set_box.cpp | 3 ++- Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp | 2 +- Telegram/SourceFiles/mainwidget.cpp | 4 ++-- Telegram/SourceFiles/mainwindow.cpp | 4 ++-- Telegram/SourceFiles/settings/settings_chat.cpp | 2 +- Telegram/SourceFiles/settings/settings_intro.cpp | 10 +++++----- Telegram/SourceFiles/window/window_controller.cpp | 6 +++++- Telegram/SourceFiles/window/window_controller.h | 2 ++ Telegram/SourceFiles/window/window_main_menu.cpp | 5 +++-- 12 files changed, 30 insertions(+), 24 deletions(-) diff --git a/Telegram/SourceFiles/boxes/abstract_box.cpp b/Telegram/SourceFiles/boxes/abstract_box.cpp index e1dfb1cad..08e19e769 100644 --- a/Telegram/SourceFiles/boxes/abstract_box.cpp +++ b/Telegram/SourceFiles/boxes/abstract_box.cpp @@ -33,12 +33,6 @@ void hideLayer(anim::type animated) { } } -void hideSettingsAndLayer(anim::type animated) { - if (auto w = App::wnd()) { - w->ui_hideSettingsAndLayer(animated); - } -} - bool isLayerShown() { if (auto w = App::wnd()) return w->ui_isLayerShown(); return false; diff --git a/Telegram/SourceFiles/boxes/abstract_box.h b/Telegram/SourceFiles/boxes/abstract_box.h index 95d15f038..782f7da90 100644 --- a/Telegram/SourceFiles/boxes/abstract_box.h +++ b/Telegram/SourceFiles/boxes/abstract_box.h @@ -47,7 +47,6 @@ QPointer show( } void hideLayer(anim::type animated = anim::type::normal); -void hideSettingsAndLayer(anim::type animated = anim::type::normal); bool isLayerShown(); } // namespace Ui diff --git a/Telegram/SourceFiles/boxes/peers/edit_peer_permissions_box.cpp b/Telegram/SourceFiles/boxes/peers/edit_peer_permissions_box.cpp index d2d304993..4e54c39f7 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_peer_permissions_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_peer_permissions_box.cpp @@ -24,6 +24,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "boxes/peers/edit_participants_box.h" #include "boxes/peers/edit_peer_info_box.h" #include "window/window_session_controller.h" +#include "window/window_controller.h" #include "main/main_session.h" #include "mainwindow.h" #include "apiwrap.h" @@ -329,8 +330,12 @@ Fn AboutGigagroupCallback( channel->inputChannel )).done([=](const MTPUpdates &result) { channel->session().api().applyUpdates(result); - Ui::hideSettingsAndLayer(); - Ui::Toast::Show(tr::lng_gigagroup_done(tr::now)); + if (const auto strongController = weak.get()) { + strongController->window().hideSettingsAndLayer(); + Ui::Toast::Show( + strongController->widget(), + tr::lng_gigagroup_done(tr::now)); + } }).fail([=] { *converting = false; }).send(); diff --git a/Telegram/SourceFiles/boxes/sticker_set_box.cpp b/Telegram/SourceFiles/boxes/sticker_set_box.cpp index 6c50eff87..72bef0e46 100644 --- a/Telegram/SourceFiles/boxes/sticker_set_box.cpp +++ b/Telegram/SourceFiles/boxes/sticker_set_box.cpp @@ -34,6 +34,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "chat_helpers/stickers_lottie.h" #include "media/clip/media_clip_reader.h" #include "window/window_session_controller.h" +#include "window/window_controller.h" #include "base/unixtime.h" #include "main/main_session.h" #include "apiwrap.h" @@ -669,7 +670,7 @@ void StickerSetBox::Inner::send( const auto controller = _controller; Ui::PostponeCall(controller, [=] { if (controller->content()->sendExistingDocument(sticker, options)) { - Ui::hideSettingsAndLayer(); + controller->window().hideSettingsAndLayer(); } }); } diff --git a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp index a144c417a..d7fd5fb36 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp @@ -3102,7 +3102,7 @@ void InnerWidget::setupShortcuts() { Data::Folder::kId); if (folder && !folder->chatsList()->empty()) { _controller->openFolder(folder); - Ui::hideSettingsAndLayer(); + _controller->window().hideSettingsAndLayer(); return true; } return false; diff --git a/Telegram/SourceFiles/mainwidget.cpp b/Telegram/SourceFiles/mainwidget.cpp index 8fd242896..a7191cdc4 100644 --- a/Telegram/SourceFiles/mainwidget.cpp +++ b/Telegram/SourceFiles/mainwidget.cpp @@ -1372,7 +1372,7 @@ void MainWidget::ui_showPeerHistory( const auto wasActivePeer = _controller->activeChatCurrent().peer(); if (params.activation != anim::activation::background) { - Ui::hideSettingsAndLayer(); + controller()->window().hideSettingsAndLayer(); } if (_hider) { _hider->startHide(); @@ -1649,7 +1649,7 @@ void MainWidget::showNewSection( } if (params.activation != anim::activation::background) { - Ui::hideSettingsAndLayer(); + controller()->window().hideSettingsAndLayer(); } _controller->dialogsListFocused().set(false, true); diff --git a/Telegram/SourceFiles/mainwindow.cpp b/Telegram/SourceFiles/mainwindow.cpp index b0722078f..2c8199836 100644 --- a/Telegram/SourceFiles/mainwindow.cpp +++ b/Telegram/SourceFiles/mainwindow.cpp @@ -242,7 +242,7 @@ void MainWindow::setupPasscodeLock() { updateControlsGeometry(); Core::App().hideMediaView(); - Ui::hideSettingsAndLayer(anim::type::instant); + ui_hideSettingsAndLayer(anim::type::instant); if (_main) { _main->hide(); } @@ -841,7 +841,7 @@ void MainWindow::sendPaths() { return; } Core::App().hideMediaView(); - Ui::hideSettingsAndLayer(anim::type::instant); + ui_hideSettingsAndLayer(anim::type::instant); if (_main) { _main->activate(); } diff --git a/Telegram/SourceFiles/settings/settings_chat.cpp b/Telegram/SourceFiles/settings/settings_chat.cpp index 24d4a498e..7c2de8b97 100644 --- a/Telegram/SourceFiles/settings/settings_chat.cpp +++ b/Telegram/SourceFiles/settings/settings_chat.cpp @@ -827,7 +827,7 @@ void SetupExport( st::settingsButtonNoIcon )->addClickHandler([=] { const auto session = &controller->session(); - Ui::hideSettingsAndLayer(); + controller->window().hideSettingsAndLayer(); base::call_delayed( st::boxDuration, session, diff --git a/Telegram/SourceFiles/settings/settings_intro.cpp b/Telegram/SourceFiles/settings/settings_intro.cpp index 1e0acca09..00033b888 100644 --- a/Telegram/SourceFiles/settings/settings_intro.cpp +++ b/Telegram/SourceFiles/settings/settings_intro.cpp @@ -190,7 +190,7 @@ private: void setInnerWidget(object_ptr content); void showContent(not_null window); rpl::producer topShadowToggledValue() const; - void createTopBar(); + void createTopBar(not_null window); void applyAdditionalScroll(int additionalScroll); rpl::variable _scrollTopSkip = -1; @@ -226,7 +226,7 @@ IntroWidget::IntroWidget( updateControlsGeometry(); }, lifetime()); - createTopBar(); + createTopBar(window); showContent(window); _topShadow->toggleOn( topShadowToggledValue( @@ -273,15 +273,15 @@ void IntroWidget::forceContentRepaint() { } } -void IntroWidget::createTopBar() { +void IntroWidget::createTopBar(not_null window) { _topBar.create(this, st::infoLayerTopBar); _topBar->setTitle(tr::lng_menu_settings()); auto close = _topBar->addButton( base::make_unique_q( _topBar, st::infoLayerTopBarClose)); - close->addClickHandler([] { - Ui::hideSettingsAndLayer(); + close->addClickHandler([=] { + window->hideSettingsAndLayer(); }); _topBar->lower(); diff --git a/Telegram/SourceFiles/window/window_controller.cpp b/Telegram/SourceFiles/window/window_controller.cpp index f2d302c19..23079805d 100644 --- a/Telegram/SourceFiles/window/window_controller.cpp +++ b/Telegram/SourceFiles/window/window_controller.cpp @@ -165,7 +165,7 @@ void Controller::checkLockByTerms() { } return; } - Ui::hideSettingsAndLayer(anim::type::instant); + hideSettingsAndLayer(anim::type::instant); const auto box = show(Box( *data, tr::lng_terms_agree(), @@ -327,6 +327,10 @@ void Controller::showRightColumn(object_ptr widget) { _widget.showRightColumn(std::move(widget)); } +void Controller::hideSettingsAndLayer(anim::type animated) { + _widget.ui_hideSettingsAndLayer(animated); +} + void Controller::sideBarChanged() { _widget.recountGeometryConstraints(); } diff --git a/Telegram/SourceFiles/window/window_controller.h b/Telegram/SourceFiles/window/window_controller.h index 2cd80c8ad..517520b37 100644 --- a/Telegram/SourceFiles/window/window_controller.h +++ b/Telegram/SourceFiles/window/window_controller.h @@ -83,6 +83,8 @@ public: void showRightColumn(object_ptr widget); + void hideSettingsAndLayer(anim::type animated = anim::type::normal); + void activate(); void reActivate(); void updateIsActiveFocus(); diff --git a/Telegram/SourceFiles/window/window_main_menu.cpp b/Telegram/SourceFiles/window/window_main_menu.cpp index ef9e0d004..6f9cee618 100644 --- a/Telegram/SourceFiles/window/window_main_menu.cpp +++ b/Telegram/SourceFiles/window/window_main_menu.cpp @@ -10,6 +10,7 @@ https://github.com/telegramdesktop/tdesktop/blob/master/LEGAL #include "window/themes/window_theme.h" #include "window/window_peer_menu.h" #include "window/window_session_controller.h" +#include "window/window_controller.h" #include "ui/chat/chat_theme.h" #include "ui/widgets/buttons.h" #include "ui/widgets/labels.h" @@ -666,7 +667,7 @@ void MainMenu::setupArchive() { const auto showArchive = [=] { if (const auto f = folder()) { controller->openFolder(f); - Ui::hideSettingsAndLayer(); + controller->window().hideSettingsAndLayer(); } }; const auto checkArchive = [=] { @@ -716,7 +717,7 @@ void MainMenu::setupArchive() { const auto hide = [=] { controller->session().settings().setArchiveInMainMenu(false); controller->session().saveSettingsDelayed(); - Ui::hideSettingsAndLayer(); + controller->window().hideSettingsAndLayer(); }; addAction( tr::lng_context_archive_to_list(tr::now),