File tree Expand file tree Collapse file tree 1 file changed +15
-14
lines changed
packages/core/src/internal/data-grid-search Expand file tree Collapse file tree 1 file changed +15
-14
lines changed Original file line number Diff line number Diff line change @@ -298,24 +298,25 @@ const DataGridSearch: React.FunctionComponent<DataGridSearchProps> = p => {
298
298
) ;
299
299
300
300
React . useEffect ( ( ) => {
301
- if ( showSearch && searchInputRef . current !== null ) {
302
- // Reset search whenever it gets shown:
303
- setSearchString ( "" ) ;
304
- setSearchStatus ( undefined ) ;
301
+ if ( searchInputRef . current === null ) return ;
302
+
303
+ // Reset search whenever search status changes:
304
+ setSearchString ( "" ) ;
305
+ setSearchStatus ( undefined ) ;
306
+ if ( searchResultsInner . length > 0 ) {
305
307
setSearchResultsInner ( [ ] ) ;
306
308
onSearchResultsChanged ?.( [ ] , - 1 ) ;
307
- cancelSearch ( ) ;
309
+ }
310
+
311
+ if ( showSearch ) {
308
312
searchInputRef . current . focus ( { preventScroll : true } ) ;
313
+ } else {
314
+ // Cancel search when it gets hidden:
315
+ cancelSearch ( ) ;
309
316
}
310
- } , [
311
- showSearch ,
312
- searchInputRef ,
313
- setSearchString ,
314
- setSearchStatus ,
315
- setSearchResultsInner ,
316
- onSearchResultsChanged ,
317
- cancelSearch ,
318
- ] ) ;
317
+ // Only re-run when showSearch changes:
318
+ // eslint-disable-next-line react-hooks/exhaustive-deps
319
+ } , [ showSearch , searchInputRef ] ) ;
319
320
320
321
const onNext = React . useCallback (
321
322
( ev ?: React . MouseEvent ) => {
You can’t perform that action at this time.
0 commit comments