diff --git a/src/components/NavBar/HorizontalNavBar/SearchBar/SearchBar.js b/src/components/NavBar/HorizontalNavBar/SearchBar/SearchBar.js index a4bb25c7a..885dd196f 100644 --- a/src/components/NavBar/HorizontalNavBar/SearchBar/SearchBar.js +++ b/src/components/NavBar/HorizontalNavBar/SearchBar/SearchBar.js @@ -1,6 +1,8 @@ // Copyright (C) 2017-2023 Smart code 203358507 const React = require('react'); +const { useNavigate } = require('react-router'); +const { useSearchParams } = require('react-router-dom'); const PropTypes = require('prop-types'); const classnames = require('classnames'); const debounce = require('lodash.debounce'); @@ -22,16 +24,17 @@ const SearchBar = React.memo(({ className, query, active }) => { const searchHistory = useSearchHistory(); const localSearch = useLocalSearch(); const { createTorrentFromMagnet } = useTorrent(); + const navigate = useNavigate(); const [historyOpen, openHistory, closeHistory, ] = useBinaryState(query === null ? true : false); const [currentQuery, setCurrentQuery] = React.useState(query || ''); - + const [, setSearchParams] = useSearchParams(); const searchInputRef = React.useRef(null); const containerRef = React.useRef(null); const searchBarOnClick = React.useCallback(() => { if (!active) { - window.location = '#/search'; + navigate('/search'); } }, [active]); @@ -64,7 +67,7 @@ const SearchBar = React.memo(({ className, query, active }) => { const searchValue = `/search?search=${encodeURIComponent(event.target.value)}`; setCurrentQuery(searchValue); if (searchInputRef.current && searchValue) { - window.location.hash = searchValue; + setSearchParams({ search: event.target.value }); closeHistory(); } }, []); @@ -72,7 +75,7 @@ const SearchBar = React.memo(({ className, query, active }) => { const queryInputClear = React.useCallback(() => { searchInputRef.current.value = ''; setCurrentQuery(''); - window.location.hash = '/search'; + navigate('/search', { search: '' }); }, []); const updateLocalSearchDebounced = React.useCallback(debounce((query) => {