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.
This commit is contained in:
Eric Kotato 2020-04-20 22:03:56 +03:00
parent ae5f1638f6
commit c7327a335f
2 changed files with 7 additions and 4 deletions

View file

@ -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<Ui::RpWidget*> 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;
}
}

View file

@ -35,7 +35,7 @@ public:
private:
void setup();
void refresh(bool firstLoad = false);
void refresh();
void setupList();
void applyReorder(
not_null<Ui::RpWidget*> widget,