Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot exclude compassView from VoiceOver (accessibility) when map is not north #3058

Closed
krupupakku opened this issue Nov 29, 2024 · 1 comment · Fixed by #3068
Closed

Cannot exclude compassView from VoiceOver (accessibility) when map is not north #3058

krupupakku opened this issue Nov 29, 2024 · 1 comment · Fixed by #3068

Comments

@krupupakku
Copy link

krupupakku commented Nov 29, 2024

MapLibre iOS Version

6.8.0

iOS Version

18.0

Device

iPhone 13

What happened?

Hey! as I'm not using the compassView I need to exclude it from being read from the iOS accessibility VoiceOver but I noticed even if I'm setting

        map.compassView.isAccessibilityElement = false
        map.compassView.accessibilityElementsHidden = true

is the map is not facing north, it's being read by screen reader. It's also visible in accessibility list elements (two fingers, three taps on screen).
If the map is not rotated there's no problem, screen reader is ignoring the compass view

extra info: rendering or hiding compass view is not changing things.

Some screens:

/ Map List
Not North
North

Steps to reproduce

  • just show a simple map,
  • try disable compassView from accessibility (I'm doing it in updateUIView)
  • rotate the map to not face north

Relevant log output

Additional context

No response

@louwers
Copy link
Collaborator

louwers commented Nov 29, 2024

Thanks for the report. I am not super aware how Voice Over works.

We have a developing guide if you want to try looking into this yourself.

self.accessibilityTraits = UIAccessibilityTraitButton;
self.accessibilityLabel = NSLocalizedStringWithDefaultValue(@"COMPASS_A11Y_LABEL", nil, nil, @"Compass", @"Accessibility label");
self.accessibilityHint = NSLocalizedStringWithDefaultValue(@"COMPASS_A11Y_HINT", nil, nil, @"Rotates the map to face due north", @"Accessibility hint");

MLNCompassDirectionFormatter seems to be generating that message you see.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants