fix: Clear Searchbar when Screen is Unfocused (Closes #358)

This commit is contained in:
Rajarshee Chatterjee
2022-08-14 11:13:10 +05:30
parent 97e02177a4
commit 27e5300f4f
2 changed files with 12 additions and 4 deletions
+11 -1
View File
@@ -1,9 +1,19 @@
import { useCallback, useState } from 'react';
import { useIsFocused } from '@react-navigation/native';
import { useCallback, useEffect, useState } from 'react';
const useSearch = (defaultSearchText?: string) => {
const isFocused = useIsFocused();
const [searchText, setSearchText] = useState<string>(defaultSearchText || '');
const clearSearchbar = useCallback(() => setSearchText(''), []);
useEffect(() => {
if (!isFocused) {
clearSearchbar();
}
}, [isFocused, clearSearchbar]);
return { searchText, setSearchText, clearSearchbar };
};
+1 -3
View File
@@ -170,9 +170,7 @@ const UpdatesScreen = () => {
}
contentContainerStyle={styles.listContainer}
keyExtractor={item => item.chapterId.toString()}
sections={groupUpdatesByDate(
searchResults.length > 0 ? searchResults : updates,
)}
sections={groupUpdatesByDate(searchText ? searchResults : updates)}
renderSectionHeader={({ section: { date } }) => (
<Text
style={[styles.dateHeader, { color: theme.textColorSecondary }]}