From 848ba1d85f00a050224e6900891b9a2f5923e35a Mon Sep 17 00:00:00 2001 From: Masashi Katsumata Date: Sat, 7 Nov 2026 20:52:54 -0800 Subject: [PATCH] Redraw markers after clearing them The marker controller's clear() emptied the manager, but onRemove only drops icon references; the GeoJSON source is rewritten from the manager in onPostProcess, which clear() never called. The markers stayed on the map after clearOverlays(). Call it once the manager is empty, the same order the core controllers use. --- .../com/mapconductor/mappls/marker/MapplsMarkerController.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/mapconductor/mappls/marker/MapplsMarkerController.kt b/src/main/java/com/mapconductor/mappls/marker/MapplsMarkerController.kt index b0c87d7..45ef10c 100644 --- a/src/main/java/com/mapconductor/mappls/marker/MapplsMarkerController.kt +++ b/src/main/java/com/mapconductor/mappls/marker/MapplsMarkerController.kt @@ -217,6 +217,10 @@ class MapplsMarkerController( markerManager.clear() tiledMarkerIds.clear() removeTileOverlay() + // onRemove はアイコンの参照数を減らすだけで、地図のソースは onPostProcess が + // manager の中身から描き直すまで変わらない。空にした後で呼ばないと、 + // clearOverlays() の後もマーカーが地図に残る。 + renderer.onPostProcess() } }