diff --git a/Telegram/SourceFiles/boxes/peers/edit_peer_requests_box.cpp b/Telegram/SourceFiles/boxes/peers/edit_peer_requests_box.cpp index 68dad1495..4c37fd4f1 100644 --- a/Telegram/SourceFiles/boxes/peers/edit_peer_requests_box.cpp +++ b/Telegram/SourceFiles/boxes/peers/edit_peer_requests_box.cpp @@ -366,12 +366,18 @@ void RequestsBoxController::rowElementClicked( void RequestsBoxController::processRequest( not_null user, bool approved) { - const auto done = crl::guard(this, [=] { + const auto remove = [=] { if (const auto row = delegate()->peerListFindRow(user->id.value)) { delegate()->peerListRemoveRow(row); refreshDescription(); delegate()->peerListRefreshRows(); } + static_cast( + searchController())->removeFromCache(user); + pushRecentRequests(); + }; + const auto done = crl::guard(this, [=] { + remove(); if (approved) { Ui::ShowMultilineToast({ .text = (_peer->isBroadcast() @@ -383,9 +389,8 @@ void RequestsBoxController::processRequest( Ui::Text::WithEntities) }); } - pushRecentRequests(); }); - const auto fail = [] {}; + const auto fail = crl::guard(this, remove); session().api().inviteLinks().processRequest( _peer, QString(), // link