Skip to content

Make aria-live optional #4447

Closed
Closed

Description

@bozdoz

What do I want?

I want to make an accessible combobox.

What do I have in mind?

Make aria-live messages optional: they are not part of the spec for combobox accessibility, and I would like to remove it entirely.

Example of similar functionality

Accessible combobox is defined on w3.org: https://www.w3.org/TR/wai-aria-practices-1.1/examples/combobox/aria1.0pattern/combobox-autocomplete-both.html

No aria-live; just roles and attributes.

Activity

  1. ebonow commented on Feb 17, 2021

    @ebonow
    Collaborator

    Greetings @bozdoz ,

    Just a heads up that this functionality will likely be covered in #4414 though it is not yet explicitly documented (update: added this to the PR).

    It's understood that there are collisions with some of the roles and attributes so making the aria-live attribute accessible via props to be assertive, polite, or off should suffice to meet the needs of more people.

    I think there are some larger discussions to be had about the expectations of screen reader compatibility across various attributes across different situations and implementations. Roles and attributes has been tried before and was not a sufficient solution at the time which is why aria-live was implemented, but that said, we want to shore up the existing aria-live compatibility as react-select is very much geared towards giving users better customization.

    To my understanding, #1585 exists because the selected option/options does not exist in the input which is even more problematic when working with isMulti. @bozdoz are you aware of any native attributes/roles that fills this gap?

  2. linked a pull request that will close this issueAria Live Configuration #4414on Feb 17, 2021
  3. bozdoz commented on Feb 23, 2021

    @bozdoz
    Author

    @ebonow re #1585 I've also run into that problem, and I agree with your assessment: the value is rendered in a div, and not present in the focused input. I'm not sure how you get around that without faking it with aria-live messages. So maybe this issue of disabling aria-live is not worth working on.

  4. ebonow commented on Feb 23, 2021

    @ebonow
    Collaborator

    @bozdoz it's certainly complicated. One other challenge has been dealing with isMulti as that is another use-case not handled well by default attributes and roles.

    We discussed this as a group to see if it was worth implementing, and the ability to set the aria-live attribute to "assertive" or "off" might make sense for some implementations so we decided to add aria-live as a prop in the incoming PR.

    We truly want to provide a better experience when it comes to accessibility and I understand many see these shortcomings as a slight, so we are going to do a better job explaining by adding a section dedicated to accessibility and giving better tools to support an experience for all users.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions