diff --git a/package/android/src/main/java/com/margelo/nitro/nitromaps/ClusterElement+AccessibilityLabel.kt b/package/android/src/main/java/com/margelo/nitro/nitromaps/ClusterElement+AccessibilityLabel.kt new file mode 100644 index 0000000..e4c3cb7 --- /dev/null +++ b/package/android/src/main/java/com/margelo/nitro/nitromaps/ClusterElement+AccessibilityLabel.kt @@ -0,0 +1,6 @@ +package com.margelo.nitro.nitromaps + +import android.content.res.Resources + +internal fun ClusterElement.Cluster.accessibilityLabel(resources: Resources): String = + resources.getQuantityString(R.plurals.better_maps_cluster_description, count, count) diff --git a/package/android/src/main/java/com/margelo/nitro/nitromaps/MapOverlayController.kt b/package/android/src/main/java/com/margelo/nitro/nitromaps/MapOverlayController.kt index 405b094..5faeeec 100644 --- a/package/android/src/main/java/com/margelo/nitro/nitromaps/MapOverlayController.kt +++ b/package/android/src/main/java/com/margelo/nitro/nitromaps/MapOverlayController.kt @@ -316,6 +316,7 @@ internal class MapOverlayController( .position(element.position) .icon(iconFactory.icon(element.count)) .anchor(0.5f, 0.5f) + .title(element.accessibilityLabel(context.resources)) if (shouldAnimate) { options.alpha(0f) } @@ -356,6 +357,7 @@ internal class MapOverlayController( marker.alpha = 1f marker.position = element.position marker.setIcon(iconFactory.icon(element.count)) + marker.title = element.accessibilityLabel(context.resources) clusterByKey[key] = element } } diff --git a/package/android/src/main/res/values/strings.xml b/package/android/src/main/res/values/strings.xml new file mode 100644 index 0000000..0a7fc28 --- /dev/null +++ b/package/android/src/main/res/values/strings.xml @@ -0,0 +1,7 @@ + + + + %d marker in this cluster + %d markers in this cluster + +