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

Update aria-details #1136

Merged
merged 23 commits into from
Feb 11, 2020
Merged

Update aria-details #1136

merged 23 commits into from
Feb 11, 2020

Conversation

aleventhal
Copy link
Contributor

@aleventhal aleventhal commented Dec 11, 2019

  1. Support multiple elements.
  2. Support types of information/annotations that are not descriptions.

Refers to issue #749.


Preview (#aria-details) (#AriaAttributes) | Diff

index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
Copy link
Contributor

@joanmarie joanmarie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(I hate adding an "as long as you're fixing stuff here...." request, because I hate receiving them. 😃 But I've been working on implementing support for aria-details in Orca and I think it's relevant.)

I'd like to see an "Authors MUST give an accessible name to the object containing the details." I can live with it being a SHOULD.

EDIT: It just occurred to me that making it a MUST implies role restrictions, namely aria-details could only point to objects whose roles permit naming. Thus no details in paragraphs or the like.... Guess that means it needs to be a SHOULD rather than a MUST.

I came across Scott's blog entry on aria-details when looking for what the user experience should be, and he mentioned:

For instance, when an element has aria-details, JAWS will announce “Has details” but provides no indication in where those details may be located in the DOM.

I agree with his observation. Therefore, what Orca does now is announce "Has details in $OBJECT_NAME $OBJECT_ROLE." While this is not as good as the to-be-implemented command to navigate directly to the object with details, it does make it possible for users to use screen-reader list of dialogs for navigation. For instance, if Scott had named the list associated with the password requirements, Orca could say "Password: Password text. Has details in Requirements list." The Orca user could then do Alt+Shift+L for the list of Lists and find the Requirements list. Unfortunately, he didn't name it. So Orca just says "Has details in list."

Copy link
Contributor Author

@aleventhal aleventhal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AIUI on our phone call we determined that it is not necessary to push a role or name. There are cases where one or both don't make sense.

To get around this and do something helpful for the user, the screen reader can try to present something based on the following:

  • optional role
  • optional name or contents

Screen reader can have an option like:
[ ] Annotation verbosity: summarize comments, footnotes and other details

Or maybe there is a 3 way toggle -- no details | role only | summary

index.html Outdated Show resolved Hide resolved
@carmacleod
Copy link
Contributor

@aleventhal What is the use case for multiple elements? Does it merit an example?

@aleventhal
Copy link
Contributor Author

@aleventhal What is the use case for multiple elements? Does it merit an example?

Example is multiple comments on the same content. These may not be part of the same thread. For example, Google Docs allows this.

@carmacleod
Copy link
Contributor

Example is multiple comments on the same content.

Ah, ok - I see. Thanks.

index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
@aleventhal
Copy link
Contributor Author

This branch has conflicts, but if I rebase to master and push, will that make the review harder? I think it will be harder to see changes between versions.

@carmacleod
Copy link
Contributor

if I rebase to master and push, will that make the review harder?

We're so close - maybe wait? @jnurthen ?

index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
index.html Outdated Show resolved Hide resolved
@mcking65
Copy link
Contributor

Looking great now! Thank you for the updates!!

@aleventhal
Copy link
Contributor Author

Anyone else want to approve so we can get this in?
@carmacleod @jnurthen @joanmarie

Copy link
Contributor

@joanmarie joanmarie left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thanks!

Copy link
Contributor

@carmacleod carmacleod left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1
Looks good!

@carmacleod
Copy link
Contributor

carmacleod commented Feb 3, 2020

@aleventhal
Would you be able to add one teeny tiny completely inconsequential change "while you're there"?
In example 18, the word "ramp" is missing from:

In this example you will notice a skateboard ramp with a base and vertical board ...

I know... it's the equivalent of Lorem ipsum and nobody's going to read it, and you didn't even write that example... but I noticed it and I Can't. Let. Go... 😄

@aleventhal
Copy link
Contributor Author

@aleventhal
Would you be able to add one teeny tiny completely inconsequential change "while you're there"?

Done.

aleventhal and others added 23 commits February 7, 2020 15:48
1) Support multiple elements.
2) Support types of information/annotations that are not descriptions.

Refers to issue #749.
Co-Authored-By: James Nurthen <[email protected]>
Co-Authored-By: James Nurthen <[email protected]>
…o do when aria-details is used in conjunction with aria-description or aria-describedby
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Carolyn MacLeod <[email protected]>
@jnurthen jnurthen merged commit e8b2274 into master Feb 11, 2020
carmacleod pushed a commit that referenced this pull request May 7, 2020
* Update aria-details:
1) Support multiple elements.
2) Support types of information/annotations that are not descriptions.
Co-Authored-By: James Nurthen <[email protected]>
Co-Authored-By: Matt King <[email protected]>
Co-Authored-By: Carolyn MacLeod <[email protected]>
@jnurthen jnurthen deleted the aria_details_update branch July 23, 2020 22:27
@pkra pkra added this to the ARIA 1.3 milestone Jan 10, 2022
@pkra pkra mentioned this pull request Jan 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants