From 9d3b3476c2187b7845bab052f3a06e031182ec96 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Fri, 15 Nov 2024 10:51:20 +0300 Subject: [PATCH] Fixed display of chats filters strip in new windows. --- Telegram/SourceFiles/dialogs/dialogs_widget.cpp | 1 + .../SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp | 9 ++++++--- .../SourceFiles/ui/widgets/chat_filters_tabs_strip.h | 5 +++++ 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp index ab1f88108..f2e809107 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp @@ -1331,6 +1331,7 @@ void Widget::toggleFiltersMenu(bool enabled) { controller()->setActiveChatsFilter(id); } }, + controller(), true); raw->show(); raw->stackUnder(_scroll); diff --git a/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp b/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp index bd39d4ba6..8c1549481 100644 --- a/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp +++ b/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.cpp @@ -173,16 +173,19 @@ not_null AddChatFiltersTabsStrip( not_null parent, not_null session, Fn choose, + Window::SessionController *controller, bool trackActiveFilterAndUnreadAndReorder) { - const auto window = Core::App().findWindow(parent); - const auto controller = window ? window->sessionController() : nullptr; const auto &scrollSt = st::defaultScrollArea; const auto wrap = Ui::CreateChild>( parent, object_ptr(parent)); if (!controller) { - return wrap; + const auto window = Core::App().findWindow(parent); + controller = window ? window->sessionController() : nullptr; + if (!controller) { + return wrap; + } } const auto container = wrap->entity(); const auto scroll = Ui::CreateChild(container, scrollSt); diff --git a/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.h b/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.h index 641065ff8..7b42651ed 100644 --- a/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.h +++ b/Telegram/SourceFiles/ui/widgets/chat_filters_tabs_strip.h @@ -15,12 +15,17 @@ namespace Ui { class RpWidget; } // namespace Ui +namespace Window { +class SessionController; +} // namespace Window + namespace Ui { not_null AddChatFiltersTabsStrip( not_null parent, not_null session, Fn choose, + Window::SessionController *controller = nullptr, bool trackActiveFilterAndUnreadAndReorder = false); } // namespace Ui