From c7327a335ff74b7e19db6e63ff30c285ad74e286 Mon Sep 17 00:00:00 2001 From: RadRussianRus Date: Mon, 20 Apr 2020 22:03:56 +0300 Subject: [PATCH] Apply default folder on only first refresh Actually, it already should've work this way, but since filters menu can be re-created, default folder was applied on every re-creation. --- Telegram/SourceFiles/window/window_filters_menu.cpp | 9 ++++++--- Telegram/SourceFiles/window/window_filters_menu.h | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Telegram/SourceFiles/window/window_filters_menu.cpp b/Telegram/SourceFiles/window/window_filters_menu.cpp index e878b7a59..9217b18b5 100644 --- a/Telegram/SourceFiles/window/window_filters_menu.cpp +++ b/Telegram/SourceFiles/window/window_filters_menu.cpp @@ -58,6 +58,8 @@ namespace { }); } +bool FiltersFirstLoad = true; + } // namespace FiltersMenu::FiltersMenu( @@ -105,7 +107,7 @@ void FiltersMenu::setup() { ) | rpl::then( filters->changed() ) | rpl::start_with_next([=] { - refresh(true); + refresh(); }, _outer.lifetime()); _activeFilterId = _session->activeChatsFilterCurrent(); @@ -162,7 +164,7 @@ void FiltersMenu::scrollToButton(not_null widget) { anim::sineInOut); } -void FiltersMenu::refresh(bool firstLoad) { +void FiltersMenu::refresh() { const auto filters = &_session->session().data().chatsFilters(); if (filters->list().empty() || _ignoreRefresh) { return; @@ -187,8 +189,9 @@ void FiltersMenu::refresh(bool firstLoad) { _container->resizeToWidth(_outer.width()); - if (firstLoad) { + if (FiltersFirstLoad) { _session->setActiveChatsFilter(cDefaultFilterId()); + FiltersFirstLoad = false; } } diff --git a/Telegram/SourceFiles/window/window_filters_menu.h b/Telegram/SourceFiles/window/window_filters_menu.h index 116def012..f89bf2bea 100644 --- a/Telegram/SourceFiles/window/window_filters_menu.h +++ b/Telegram/SourceFiles/window/window_filters_menu.h @@ -35,7 +35,7 @@ public: private: void setup(); - void refresh(bool firstLoad = false); + void refresh(); void setupList(); void applyReorder( not_null widget,