diff --git a/src/components/SearchBox/AutocompleteInput.tsx b/src/components/SearchBox/AutocompleteInput.tsx index 3d76adf8..6b9fa2ce 100644 --- a/src/components/SearchBox/AutocompleteInput.tsx +++ b/src/components/SearchBox/AutocompleteInput.tsx @@ -17,6 +17,11 @@ const SearchBoxInput = ({ params, setInputValue, autocompleteRef }) => { const inputRef = React.useRef(null); useKeyDown('/', (e) => { + const isInput = e.target instanceof HTMLInputElement; + const isTextarea = e.target instanceof HTMLTextAreaElement; + if (isInput || isTextarea) { + return; + } e.preventDefault(); inputRef.current?.focus(); }); diff --git a/src/components/SearchBox/SearchBox.tsx b/src/components/SearchBox/SearchBox.tsx index 811029ed..783e08e5 100644 --- a/src/components/SearchBox/SearchBox.tsx +++ b/src/components/SearchBox/SearchBox.tsx @@ -7,9 +7,9 @@ import { useFeatureContext } from '../utils/FeatureContext'; import { AutocompleteInput } from './AutocompleteInput'; import { t } from '../../services/intl'; import { ClosePanelButton } from '../utils/ClosePanelButton'; -import { useMobileMode, useToggleState } from '../helpers'; +import { useMobileMode } from '../helpers'; import { useInputValueState } from './options/geocoder'; -import { useOptions } from './useOptions'; +import { useGetOptions } from './useGetOptions'; import { HamburgerMenu } from '../Map/TopMenu/HamburgerMenu'; import { UserMenu } from '../Map/TopMenu/UserMenu'; import { DirectionsButton } from '../Directions/DirectionsButton'; @@ -48,7 +48,7 @@ const SearchBox = () => { const autocompleteRef = useRef(); const onClosePanel = useOnClosePanel(); - const options = useOptions(inputValue); + const options = useGetOptions(inputValue); return ( diff --git a/src/components/SearchBox/onHighlightFactory.ts b/src/components/SearchBox/onHighlightFactory.ts index b97034aa..be04d066 100644 --- a/src/components/SearchBox/onHighlightFactory.ts +++ b/src/components/SearchBox/onHighlightFactory.ts @@ -18,14 +18,13 @@ export const getSkeleton = ({ geocoder }: GeocoderOption): Feature => { const center = geocoder.geometry.coordinates; const { osm_id: id, osm_type: osmType, name } = geocoder.properties; const type = getElementType(osmType); - const [lon, lat] = center; return { + center, type: 'Feature', skeleton: true, nonOsmObject: false, osmMeta: { type, id: parseInt(id, 10) }, - center: [parseFloat(`${lon}`), parseFloat(`${lat}`)], tags: { name }, properties: { class: geocoder.properties.class, subclass: '' }, }; diff --git a/src/components/SearchBox/useOptions.tsx b/src/components/SearchBox/useGetOptions.tsx similarity index 96% rename from src/components/SearchBox/useOptions.tsx rename to src/components/SearchBox/useGetOptions.tsx index 59b9138f..87a0d17c 100644 --- a/src/components/SearchBox/useOptions.tsx +++ b/src/components/SearchBox/useGetOptions.tsx @@ -11,7 +11,7 @@ import { getOverpassOptions } from './options/overpass'; import { getPresetOptions } from './options/preset'; import { Option } from './types'; -export const useOptions = (inputValue: string) => { +export const useGetOptions = (inputValue: string) => { const { view } = useMapStateContext(); const { stars } = useStarsContext(); const [options, setOptions] = useState([]); diff --git a/src/components/helpers.tsx b/src/components/helpers.tsx index c69071b9..54d96468 100644 --- a/src/components/helpers.tsx +++ b/src/components/helpers.tsx @@ -131,11 +131,3 @@ export const ClientOnly = ({ children }) => { export const isImperial = () => window.localStorage.getItem('imperial') === 'yes'; - -export const toggleImperial = (imperial?: boolean) => { - if (imperial === undefined) { - localStorage.setItem('imperial', isImperial() ? '' : 'yes'); - return; - } - localStorage.setItem('imperial', imperial ? 'yes' : ''); -};