diff --git a/src/components/Map/MapView.jsx b/src/components/Map/MapView.jsx index 55fda91..19bb7b0 100644 --- a/src/components/Map/MapView.jsx +++ b/src/components/Map/MapView.jsx @@ -234,9 +234,11 @@ export default function MapView({ essential: true }); - // If picking a post, filter by its title; otherwise clear search + // If picking a post, filter by its title AND clear category filters to ensure visibility if (item.type === 'post' && item.title) { setSearchQuery(item.title); + setMainFilter("All"); + setSubFilter("All"); } else { setSearchQuery(""); } diff --git a/src/components/Map/markerManager.js b/src/components/Map/markerManager.js index 3b4855c..3e4c362 100644 --- a/src/components/Map/markerManager.js +++ b/src/components/Map/markerManager.js @@ -314,12 +314,12 @@ function calculateSmartOffset(post, markersRef, map) { const lon = typeof post.lon === "number" ? post.lon : typeof post.lng === "number" ? post.lng : null; if (lat == null || lon == null) return { x: 0, y: 0 }; - // Si le post est très récent (< 10 secondes), pas d'offset - respect de la position crosshair + // Si le post est très récent (< 10 secondes), offset vers le HAUT pour compenser l'anchor bottom const createdAt = post?.created_at || post?.CreatedAt || post?.createdAt; if (createdAt) { const ageSeconds = (Date.now() - new Date(createdAt).getTime()) / 1000; if (ageSeconds < 10) { - return { x: 0, y: 0 }; + return { x: 0, y: -80 }; // Offset vers le haut (négatif = monte) } }