diff --git a/src/features/compose/components/search-results.tsx b/src/features/compose/components/search-results.tsx
index 362e4abe7..f2dbcd31e 100644
--- a/src/features/compose/components/search-results.tsx
+++ b/src/features/compose/components/search-results.tsx
@@ -38,7 +38,7 @@ const SearchResults = () => {
const trendingStatuses = useAppSelector((state) => state.trending_statuses.items);
const trends = useAppSelector((state) => state.trends.items);
const submitted = useAppSelector((state) => state.search.submitted);
- const selectedFilter = useAppSelector((state) => state.search.filter);
+ const selectedFilter = useAppSelector((state) => state.search.filter || 'statuses');
const filterByAccount = useAppSelector((state) => state.search.accountId || undefined);
const { account } = useAccount(filterByAccount);
@@ -51,18 +51,18 @@ const SearchResults = () => {
const renderFilterBar = () => {
const items = [];
items.push(
- {
- text: intl.formatMessage(messages.accounts),
- action: () => selectFilter('accounts'),
- name: 'accounts',
- },
{
text: intl.formatMessage(messages.statuses),
action: () => selectFilter('statuses'),
name: 'statuses',
},
+ {
+ text: intl.formatMessage(messages.accounts),
+ action: () => selectFilter('accounts'),
+ name: 'accounts',
+ },
);
-
+
items.push(
{
text: intl.formatMessage(messages.hashtags),
@@ -70,7 +70,7 @@ const SearchResults = () => {
name: 'hashtags',
},
);
-
+
return ;
};
@@ -105,6 +105,10 @@ const SearchResults = () => {
useEffect(() => {
dispatch(fetchTrendingStatuses());
+ // Ensure the filter is set to 'statuses' initially
+ if (!selectedFilter) {
+ dispatch(setFilter('statuses'));
+ }
}, []);
let searchResults;
diff --git a/src/reducers/search.ts b/src/reducers/search.ts
index f4e299290..3019b2b86 100644
--- a/src/reducers/search.ts
+++ b/src/reducers/search.ts
@@ -45,14 +45,14 @@ const ReducerRecord = ImmutableRecord({
submittedValue: '',
hidden: false,
results: ResultsRecord(),
- filter: 'accounts' as SearchFilter,
+ filter: 'statuses' as SearchFilter,
accountId: null as string | null,
next: null as string | null,
});
type State = ReturnType;
type APIEntities = Array;
-export type SearchFilter = 'accounts' | 'statuses' | 'groups' | 'hashtags';
+export type SearchFilter = 'statuses' | 'accounts' | 'groups' | 'hashtags';
const toIds = (items: APIEntities = []) => {
return ImmutableOrderedSet(items.map(item => item.id));
@@ -62,8 +62,8 @@ const importResults = (state: State, results: APIEntity, searchTerm: string, sea
return state.withMutations(state => {
if (state.value === searchTerm && state.filter === searchType) {
state.set('results', ResultsRecord({
- accounts: toIds(results.accounts),
statuses: toIds(results.statuses),
+ accounts: toIds(results.accounts),
groups: toIds(results.groups),
hashtags: ImmutableOrderedSet(results.hashtags.map(normalizeTag)), // it's a list of records
accountsHasMore: results.accounts.length >= 20,