Coder Social home page Coder Social logo

Comments (4)

orangemug avatar orangemug commented on May 30, 2024

A branch attempting to summarise a map mb-pages...orangemug:feature/issue-5

I'm still a little unclear which element the aria-* should exist on but since the <canvas/> has the tabIndex that seems to make sense. Has anybody got any good resources (blogs, tech specs, etc...) for maps and accessibility?

from mapbox-gl-accessibility.

andrewharvey avatar andrewharvey commented on May 30, 2024

Yep the canvas has aria-label=Map[1] by default, which was added in mapbox/mapbox-gl-js#3782.

That canvas element is the one that needs to be focused for the arrow keys to pan the map so using a label like "Map" helps users using assistive technologies know this is the map element.

The spec says aria-label "provides the user with a recognizable name of the object", so I don't think it's right to overload it with a longer description. I think aria-describedby is where a longer description should go.

As for the description is likely very application dependent, so good to make it settable. Could be simply "Map of London" or "Map of pubs in London".

I'm not sure about including the zoom level as a number, as users don't know about zoom levels. I think describing the location as "Map of the world", "Map of Europe", "Map of UK", "Map of London", "Map of South Bank", "Map of Bernie Spain Gardens" does a better job.

[1] https://github.com/mapbox/mapbox-gl-js/blob/744adc7e4db29384c5ebe4e109657239dcb01b55/src/ui/map.js#L1474

from mapbox-gl-accessibility.

1ec5 avatar 1ec5 commented on May 30, 2024

I'm not sure about including the zoom level as a number, as users don't know about zoom levels.

mapbox/mapbox-gl-native#4821 has an example of the VoiceOver summary format in MapKit, which the Mapbox Maps SDK for iOS now mimics. These SDKs include the zoom level because there’s also a built-in gesture for zooming the map in and out. Essentially it’s a readout of the slider’s current state. Similarly, the lists of visible annotations, places, and roads are present because both SDKs allow the user to navigate through the full list of annotations, places, and roads one by one. Without those controls, I agree that this summary format would seem a bit contrived.

from mapbox-gl-accessibility.

orangemug avatar orangemug commented on May 30, 2024

Hey @1ec5 @andrewharvey so I think there is some confusion. To add iOS SDK parity I believe we just need to implement https://github.com/mapbox/mapbox-gl-native/blob/dcd7da14f6627a09a5840a3046b5708449962f69/platform/ios/src/MGLMapView.mm#L2293-L2330

So this is aims to be the first part of that implementing

Can you confirm that's whats required?

@andrewharvey as for aria-label good catch I'll remove that.

from mapbox-gl-accessibility.

Related Issues (19)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.