diff --git a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp index 4d14cef4b2..3c4cdeede7 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_inner_widget.cpp @@ -169,7 +169,7 @@ constexpr auto kPreviewPostsLimit = 3; [[nodiscard]] object_ptr MakeSearchEmpty( QWidget *parent, SearchState state, - Fn resetChatTypeFilter) { + Fn resetSearchFilters) { const auto query = state.query.trimmed(); const auto hashtag = !query.isEmpty() && (query[0] == '#'); const auto trimmed = hashtag ? query.mid(1).trimmed() : query; @@ -187,7 +187,7 @@ constexpr auto kPreviewPostsLimit = 3; && !fromPeer; const auto suggestAllChats = !waiting && state.tab == ChatSearchTab::MyMessages - && state.filter != ChatTypeFilter::All; + && (state.filter != ChatTypeFilter::All || !state.fromArchive); const auto icon = waiting ? SearchEmptyIcon::Search : SearchEmptyIcon::NoResults; @@ -226,7 +226,7 @@ constexpr auto kPreviewPostsLimit = 3; rpl::single(std::move(text))); if (suggestAllChats) { result->handlerActivated( - ) | rpl::on_next(resetChatTypeFilter, result->lifetime()); + ) | rpl::on_next(resetSearchFilters, result->lifetime()); } result->show(); result->resizeToWidth(parent->width()); @@ -4815,6 +4815,7 @@ void InnerWidget::refreshEmpty() { _searchEmptyState = _searchState; _searchEmpty = MakeSearchEmpty(this, _searchState, [=] { _changeSearchFilterRequests.fire(ChatTypeFilter::All); + _changeSearchFromArchiveRequests.fire(true); }); if (_controller->session().data().chatsListLoaded()) { _searchEmpty->animate();