From 98eab9e1c876af0704d2aca660e4fa75e2897fd6 Mon Sep 17 00:00:00 2001 From: Masashi Katsumata Date: Sat, 7 Nov 2026 23:10:48 -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/MapConductorForGoogleMaps/GoogleMapHost.swift | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Sources/MapConductorForGoogleMaps/GoogleMapHost.swift b/Sources/MapConductorForGoogleMaps/GoogleMapHost.swift index ad8eaa3..93a7dde 100644 --- a/Sources/MapConductorForGoogleMaps/GoogleMapHost.swift +++ b/Sources/MapConductorForGoogleMaps/GoogleMapHost.swift @@ -138,6 +138,8 @@ public final class GoogleMapHost: MapViewCoordinatorBase, GM await groundImageController?.clear() await circleController?.clear() await rasterController?.clear() + // strategy(クラスタリングなど)が描いたマーカーも消す。 + await state.serviceRegistry.clearMarkerRendering() } public func unbind() {