fix(v2): fix search input blur on desktop (#1874)

This commit is contained in:
Alexey Pyltsyn 2019-10-24 08:00:51 +03:00 committed by Yangshun Tay
parent 262dca387a
commit 0e66c908a9

View file

@ -48,15 +48,16 @@ const Search = props => {
} }
}, []); }, []);
const toggleSearchIconClick = useCallback(() => { const toggleSearchIconClick = useCallback(
props.handleSearchBarToggle(!props.isSearchBarExpanded); e => {
}, [props.isSearchBarExpanded]); if (!searchBarRef.current.contains(e.target)) {
searchBarRef.current.focus();
}
useEffect(() => { props.handleSearchBarToggle(!props.isSearchBarExpanded);
if (props.isSearchBarExpanded) { },
searchBarRef.current.focus(); [props.isSearchBarExpanded],
} );
}, [props.isSearchBarExpanded]);
return isEnabled ? ( return isEnabled ? (
<Fragment> <Fragment>
@ -78,6 +79,7 @@ const Search = props => {
{'search-bar-expanded': props.isSearchBarExpanded}, {'search-bar-expanded': props.isSearchBarExpanded},
{'search-bar': !props.isSearchBarExpanded}, {'search-bar': !props.isSearchBarExpanded},
)} )}
onFocus={toggleSearchIconClick}
onBlur={toggleSearchIconClick} onBlur={toggleSearchIconClick}
ref={searchBarRef} ref={searchBarRef}
/> />