From 5356ddbcca77de1c5c0b3cf257d228ee39917e21 Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 21 Sep 2023 13:51:21 +0200 Subject: [PATCH] Fix search results temporarily disappearing while scrolling and loading more results (#27014) --- .../mastodon/features/explore/results.jsx | 70 +++++++++---------- 1 file changed, 34 insertions(+), 36 deletions(-) diff --git a/app/javascript/mastodon/features/explore/results.jsx b/app/javascript/mastodon/features/explore/results.jsx index 1b9d2f30d..c6fe9b78e 100644 --- a/app/javascript/mastodon/features/explore/results.jsx +++ b/app/javascript/mastodon/features/explore/results.jsx @@ -156,45 +156,43 @@ class Results extends PureComponent { let filteredResults; - if (!isLoading) { - const accounts = results.get('accounts', ImmutableList()); - const hashtags = results.get('hashtags', ImmutableList()); - const statuses = results.get('statuses', ImmutableList()); + const accounts = results.get('accounts', ImmutableList()); + const hashtags = results.get('hashtags', ImmutableList()); + const statuses = results.get('statuses', ImmutableList()); - switch(type) { - case 'all': - filteredResults = (accounts.size + hashtags.size + statuses.size) > 0 ? ( - <> - {accounts.size > 0 && ( - } onClickMore={this.handleLoadMoreAccounts}> - {accounts.take(INITIAL_DISPLAY).map(id => )} - - )} + switch(type) { + case 'all': + filteredResults = (accounts.size + hashtags.size + statuses.size) > 0 ? ( + <> + {accounts.size > 0 && ( + } onClickMore={this.handleLoadMoreAccounts}> + {accounts.take(INITIAL_DISPLAY).map(id => )} + + )} - {hashtags.size > 0 && ( - } onClickMore={this.handleLoadMoreHashtags}> - {hashtags.take(INITIAL_DISPLAY).map(hashtag => )} - - )} + {hashtags.size > 0 && ( + } onClickMore={this.handleLoadMoreHashtags}> + {hashtags.take(INITIAL_DISPLAY).map(hashtag => )} + + )} - {statuses.size > 0 && ( - } onClickMore={this.handleLoadMoreStatuses}> - {statuses.take(INITIAL_DISPLAY).map(id => )} - - )} - - ) : []; - break; - case 'accounts': - filteredResults = renderAccounts(accounts); - break; - case 'hashtags': - filteredResults = renderHashtags(hashtags); - break; - case 'statuses': - filteredResults = renderStatuses(statuses); - break; - } + {statuses.size > 0 && ( + } onClickMore={this.handleLoadMoreStatuses}> + {statuses.take(INITIAL_DISPLAY).map(id => )} + + )} + + ) : []; + break; + case 'accounts': + filteredResults = renderAccounts(accounts); + break; + case 'hashtags': + filteredResults = renderHashtags(hashtags); + break; + case 'statuses': + filteredResults = renderStatuses(statuses); + break; } return (