Hi Mahdi,
Yes, we changed the hierarchy of BingMapsAsyncLayer and OpenStreetMapAsyncLayer, their inheritance hierarchy is different but they should keep the same APIs and features.
Here is the new class Hierarchy for OpenStreetMapAsyncLayer, (it’s the same for BingMapsAsyncLayer):
LayerBase -> AsyncLayer -> XyzTilesAsyncLayer -> RasterXyzTileAsyncLayer ->WebRasterXyzTileAsyncLayer -> OpenStreetMapAsyncLayer
GoogleMapsAsyncLayer still inherits from WebBasedAsyncLayer because google map request is not tile based.
LayerBase -> AsyncLayer ->WebBasedAsyncLayer->GoogleMapsAsyncLayer
We made this change to unify the reprojection/caching for all the XYZ based layers and greatly simplify the code. We had an XYZ Based Layers section in HowDoI to show it.
The LegendAdornmentLayer.Title == null issue should have been fixed in the latest beta93.
Sorry we don’t have a chance to test through the beta versions, the best way is to wait for the stable version (we are aiming for April) but if the timing doesn’t work, let me know when you guys targeting at your release and we can slow down adding new features and focus more on bug fixes during that time.
We are working on the other issues you asked.
Thanks,
Ben