From 392df8b56f3c6b0486b4309ec070f06769a86206 Mon Sep 17 00:00:00 2001 From: John Preston Date: Thu, 13 Jun 2024 16:24:41 +0400 Subject: [PATCH] Fix search in archived chats and return back. --- Telegram/SourceFiles/dialogs/dialogs_widget.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp index d421b0508b..9963ee7e98 100644 --- a/Telegram/SourceFiles/dialogs/dialogs_widget.cpp +++ b/Telegram/SourceFiles/dialogs/dialogs_widget.cpp @@ -346,8 +346,8 @@ Widget::Widget( }, lifetime()); _inner->cancelSearchRequests( ) | rpl::start_with_next([=] { - setInnerFocus(true); - applySearchState({}); + cancelSearch(true); + controller->widget()->setInnerFocus(); }, lifetime()); _inner->cancelSearchFromRequests( ) | rpl::start_with_next([=] { @@ -2823,6 +2823,9 @@ bool Widget::applySearchState(SearchState state) { } hideChildList(); } + if (state.inChat && _layout == Layout::Main) { + controller()->closeFolder(); + } // Adjust state to be consistent. if (const auto peer = state.inChat.peer()) { @@ -2929,10 +2932,6 @@ bool Widget::applySearchState(SearchState state) { _peerSearchQuery = QString(); } - if (_searchState.inChat && _layout == Layout::Main) { - controller()->closeFolder(); - } - if (_searchState.query != currentSearchQuery()) { setSearchQuery(_searchState.query); }