fix: restore isLayerOnMap() as abstract member of Layer - #1748
Merged
Conversation
The v5 rewrite dropped isLayerOnMap() from the Layer base class while keeping it as separate identical implementations in GeoJsonLayer and KmlLayer, so callers holding a Layer reference lost access to it. Fixes #1746
Contributor
Code Coverage
Files
|
dkhawk
approved these changes
Aug 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
LayerexposedisLayerOnMap()directly. The rewrite (feat!: rewrite android maps utils #1658) keptaddLayerToMap()/removeLayerFromMap()/getMap()/setMap()as abstract members ofLayer, but droppedisLayerOnMap()from the base class, leaving it duplicated identically inGeoJsonLayerandKmlLayerwith no way to call it through aLayerreference.public abstract fun isLayerOnMap(): BooleantoLayerand marks the existing implementations inGeoJsonLayer/KmlLayerasoverride. No behavior change — the two implementations were already identical.Fixes #1746
Test plan
GeoJsonLayerOnMapTestandKmlLayerOnMapTest, verifyingisLayerOnMap()is reachable through aLayer-typed reference and reflectsaddLayerToMap()/removeLayerFromMap()calls../gradlew :data:testDebugUnitTest— all 124 tests in thedatamodule pass../gradlew :data:compileDebugKotlin— compiles cleanly.