Eigentliche Ursache von 'Detailkarte zoomt nicht auf die Route': die Karte war auf dem Gerät gar keine GL-Karte mehr, sondern der Leaflet+OSM-RASTER-Fallback. Grund: _detailMap (GL-Kontext) wurde beim Schließen des Modals NIE freigegeben — jede geöffnete Route leakte einen WebGL-Kontext. Nach ~8 wirft MapLibre, und UI.map.create fällt auf Leaflet+OSM zurück. Genau die Mapnik-Kacheln aus Renés Screenshots (und die OSM-Attribution, die wir doch loswerden wollten). Fixes: - _detailMap modulweit + im onClose des Detail-Modals freigeben. - routes.js destroy(): _detailMap/_suggestMap/_searchMap + Mini-Maps beim Verlassen der Seite freigeben. - ui.js: Offscreen-Snapshot-Kontext nach 15s Leerlauf freigeben (hielt dauerhaft einen Kontext; Cache bleibt → kein Neu-Rendern). - _fitRouteMap fittet jetzt aufs 'load'/'idle'-Event der Karte (iOS verwirft ein fitBounds VOR dem ersten Render) statt nur auf feste Timeouts. Verifiziert (headless): 12 Detail-Öffnungen in Folge bleiben ALLE GL (Leaflet:false), GL-Canvas-Zahl bleibt bei 1–2 statt zu wachsen. Vorher leakte jede Öffnung einen Kontext.
1 line
No EOL
4 B
Text
1 line
No EOL
4 B
Text
1205 |