From 6505f722153acea608bda09a75e30e67313cabc8 Mon Sep 17 00:00:00 2001 From: Andrew Ding Date: Sun, 21 Jun 2026 18:01:20 +0200 Subject: [PATCH] fix lv95 coord search --- webmap-frontend/src/App.jsx | 7 +------ webmap-frontend/src/components/CantonSearch.jsx | 5 ++++- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/webmap-frontend/src/App.jsx b/webmap-frontend/src/App.jsx index 9432ea2..fde2c34 100644 --- a/webmap-frontend/src/App.jsx +++ b/webmap-frontend/src/App.jsx @@ -7,7 +7,6 @@ import NetworkLegend from "./components/NetworkLegend"; import { FileProvider } from "./FileContext"; import { AppProvider } from "./context/AppContext"; import { useData } from "./context/DataContext"; -import { useMap } from "./context/MapContext"; import { useSelection } from "./context/SelectionContext"; window.name = 'webmap-tab'; @@ -22,16 +21,12 @@ function App() { function MainContent() { const { dataURL } = useData(); - const { mapRef } = useMap(); const { setClickedCanton } = useSelection(); return ( - + diff --git a/webmap-frontend/src/components/CantonSearch.jsx b/webmap-frontend/src/components/CantonSearch.jsx index 93ab84f..8011daf 100644 --- a/webmap-frontend/src/components/CantonSearch.jsx +++ b/webmap-frontend/src/components/CantonSearch.jsx @@ -5,6 +5,7 @@ import { useData } from '../context/DataContext'; import { useSelection } from '../context/SelectionContext'; import { useFilters } from '../context/FilterContext'; import { useModule } from '../context/ModuleContext'; +import { useMap } from '../context/MapContext'; import './CantonSearch.css'; const DIACRITICS = /[̀-ͯ]/g; @@ -64,7 +65,7 @@ const parseLV95Coords = (input) => { return { x, y }; }; -const CantonSearch = ({ onSearch, map }) => { +const CantonSearch = ({ onSearch }) => { const [searchTerm, setSearchTerm] = useState(''); const [selectedIndex, setSelectedIndex] = useState(-1); const [searchMarker, setSearchMarker] = useState(null); @@ -78,6 +79,7 @@ const CantonSearch = ({ onSearch, map }) => { } = useSelection(); const { selectedTransitModes } = useFilters(); const { isGraphExpanded } = useModule(); + const { mapRef } = useMap(); const cantonEntries = useMemo(() => Object.entries(cantonAlias), []); const displayNames = useMemo( @@ -208,6 +210,7 @@ const CantonSearch = ({ onSearch, map }) => { const handleCoordsSearch = (input) => { const coords = parseLV95Coords(input); + const map = mapRef.current; if (!coords || !map) return false; const [lon, lat] = lv95ToWgs84(coords.x, coords.y);