Hi James,
This is recreated and fixed in 15.0.0-beta154. Nothing needs to change in your project.
What you will see:
Hiding, showing or restyling through RedrawAsync() no longer blanks the map. The old picture stays up and the new one takes its place in a single step once it is ready.
It is not instantaneous: the server still has to draw the new tiles and send them, so there is a short delay before your change appears. The map simply does not go dark during it.
One thing worth changing on your side
A single “Hide Selected Shapes” currently costs three tile refills across two overlays:
- ChangeFeaturesVisibilityByIdAsync → ApplyVisibilityChangeAsync → RefreshSelectionHighlightAsync() redraws DynamicOverlay
- the same method then redraws FeaturesOverlay
- ClearSelectionAsync() immediately after redraws DynamicOverlay a second time
Step 1 recomputes the selection highlight and step 3 discards it two lines later. If you clear the selection before the visibility change rather than after it, you are down to two refills and the update lands sooner.
Give beta154 a try and let us know if it works for you. And FYI: if you need to manipulate features continuously — dragging, toggling, restyling while the user works — a server-drawn tile overlay is the wrong tool for those, since every change is a round trip to the server. We are looking at a client-side vector overlay for that case and that will be more responsive.
Thanks,
Ben