From 0d9023ce15d67a5d725c3c5a2d26e3f1889d6e5a Mon Sep 17 00:00:00 2001 From: Masashi Katsumata Date: Sat, 7 Nov 2026 23:10:49 -0800 Subject: [PATCH] Clear strategy-driven markers in clearOverlays() clearOverlays() cleared this provider's own overlay controllers but not the strategy controller behind MarkerRenderingSupport, so markers drawn by clustering (or any other marker-rendering plugin) stayed on the map. It now ends with MapServiceRegistry.clearMarkerRendering() (ios-sdk-core fix/clear-strategy), which reaches the registered support's clearMarkers(): StrategyMarkerController.clear() (onRemove -> strategy.clear() -> onPostProcess), and the next syncMarkers sends the markers again, as the overlay collectors do after a clear. Requires the ios-sdk-core change that adds clearMarkers() to MarkerRenderingSupport. --- Sources/MapConductorForMapbox/MapboxMapHost.swift | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Sources/MapConductorForMapbox/MapboxMapHost.swift b/Sources/MapConductorForMapbox/MapboxMapHost.swift index afc2457..fd73143 100644 --- a/Sources/MapConductorForMapbox/MapboxMapHost.swift +++ b/Sources/MapConductorForMapbox/MapboxMapHost.swift @@ -313,6 +313,8 @@ public final class MapboxMapHost: MapViewCoordinatorBase { await groundImageController?.clear() await circleController?.clear() await rasterController?.clear() + // strategy(クラスタリングなど)が描いたマーカーも消す。 + await state.serviceRegistry.clearMarkerRendering() } public func unbind() {