rm setTimeout
This commit is contained in:
@@ -541,15 +541,11 @@ export function SearchScreen(
|
|||||||
const setMinimalShellMode = useSetMinimalShellMode()
|
const setMinimalShellMode = useSetMinimalShellMode()
|
||||||
const {isTabletOrDesktop, isTabletOrMobile} = useWebMediaQueries()
|
const {isTabletOrDesktop, isTabletOrMobile} = useWebMediaQueries()
|
||||||
|
|
||||||
const searchDebounceTimeout = React.useRef<NodeJS.Timeout | undefined>(
|
|
||||||
undefined,
|
|
||||||
)
|
|
||||||
|
|
||||||
// Query terms
|
// Query terms
|
||||||
const q = props.route?.params?.q ?? ''
|
const q = props.route?.params?.q ?? ''
|
||||||
const [query, setQuery] = React.useState<string>(q)
|
const [query, setQuery] = React.useState<string>(q)
|
||||||
const [searchInput, setSearchInput] = React.useState<string>(q)
|
const [searchText, setSearchText] = React.useState<string>(q)
|
||||||
const throttledInput = useThrottledValue(searchInput, 300)
|
const throttledInput = useThrottledValue(searchText, 300)
|
||||||
|
|
||||||
const {data: autocompleteData, isFetching: isAutocompleteFetching} =
|
const {data: autocompleteData, isFetching: isAutocompleteFetching} =
|
||||||
useActorAutocompleteQuery(throttledInput)
|
useActorAutocompleteQuery(throttledInput)
|
||||||
@@ -584,8 +580,6 @@ export function SearchScreen(
|
|||||||
textInput.current?.blur()
|
textInput.current?.blur()
|
||||||
setQuery('')
|
setQuery('')
|
||||||
setShowAutocompleteResults(false)
|
setShowAutocompleteResults(false)
|
||||||
if (searchDebounceTimeout.current)
|
|
||||||
clearTimeout(searchDebounceTimeout.current)
|
|
||||||
}, [textInput])
|
}, [textInput])
|
||||||
|
|
||||||
const onPressClearQuery = React.useCallback(() => {
|
const onPressClearQuery = React.useCallback(() => {
|
||||||
@@ -596,7 +590,7 @@ export function SearchScreen(
|
|||||||
|
|
||||||
const onChangeText = React.useCallback(async (text: string) => {
|
const onChangeText = React.useCallback(async (text: string) => {
|
||||||
scrollToTopWeb()
|
scrollToTopWeb()
|
||||||
setSearchInput(text)
|
setSearchText(text)
|
||||||
|
|
||||||
const showAutoComplete = text.length > 0
|
const showAutoComplete = text.length > 0
|
||||||
setShowAutocompleteResults(showAutoComplete)
|
setShowAutocompleteResults(showAutoComplete)
|
||||||
@@ -709,7 +703,7 @@ export function SearchScreen(
|
|||||||
placeholderTextColor={pal.colors.textLight}
|
placeholderTextColor={pal.colors.textLight}
|
||||||
selectTextOnFocus={isNative}
|
selectTextOnFocus={isNative}
|
||||||
returnKeyType="search"
|
returnKeyType="search"
|
||||||
value={searchInput}
|
value={searchText}
|
||||||
style={[pal.text, styles.headerSearchInput]}
|
style={[pal.text, styles.headerSearchInput]}
|
||||||
keyboardAppearance={theme.colorScheme}
|
keyboardAppearance={theme.colorScheme}
|
||||||
onFocus={() => setInputIsFocused(true)}
|
onFocus={() => setInputIsFocused(true)}
|
||||||
@@ -773,7 +767,7 @@ export function SearchScreen(
|
|||||||
keyboardShouldPersistTaps="handled"
|
keyboardShouldPersistTaps="handled"
|
||||||
keyboardDismissMode="on-drag">
|
keyboardDismissMode="on-drag">
|
||||||
<SearchLinkCard
|
<SearchLinkCard
|
||||||
label={_(msg`Search for "${searchInput}"`)}
|
label={_(msg`Search for "${searchText}"`)}
|
||||||
onPress={isNative ? onSubmit : undefined}
|
onPress={isNative ? onSubmit : undefined}
|
||||||
to={
|
to={
|
||||||
isNative
|
isNative
|
||||||
|
|||||||
Reference in New Issue
Block a user