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

Panel - Indicate live regions for dynamically changing content - (2036570576) #5592

Closed
Tracked by #4599
dqateam opened this issue Oct 25, 2022 · 1 comment
Closed
Tracked by #4599
Labels
0 - new New issues that need assignment. a11y Issues related to Accessibility fixes or improvements. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. needs triage Planning workflow - pending design/dev review.

Comments

@dqateam
Copy link
Collaborator

dqateam commented Oct 25, 2022

Module:

23a Panel

Violation:

Indicate live regions for dynamically changing content

WCAG Reference:

Instance ID:

2036570576

Severity:

9

Description:

[Pattern: ARIA live region - Missing for loading indicator]

[Issue]
The loading indicator is not announced for screen reader users. Even though the role=progressbar is provided the loading message is not announced

[Occurrences]
09a Button
09b Split Button
14a Floating Action Button (FAB)
15 Inline Editable
18b Card
20a Loader
23a Panel
25b Scrim

[User Impact]
Screen reader users will be unaware when the page is in a loading state.

[Code Reference]

<calcite-loader class="loading-in" aria-label="Loading" id="1179fac2-76b9-ac8d-9db7-4062b0d421a0" role="progressbar" active="" inline="" scale="m" calcite-hydrated="">
<div class="loader__svgs">
<svg class="loader__svg loader__svg--1" viewBox="0 0 16 16">
(...)
</svg>
</div>
</calcite-loader>

Note:

[Suggestion]
Indicate live regions for dynamically changing content. Live regions can be created by adding a role attribute set to "log", "status", "alert", "progressbar", "marquee", or "timer" as appropriate. Alternatively, custom behavior can be created by using the aria-live, aria-atomic, and aria-relevant attributes. Text injected into this live region element will be announced by screen readers.

Importantly, the element with the ARIA live attributes must be available when the page loads. Otherwise, many screen readers will not detect updates to the element. Additionally, the element must be empty on page load unless an immediate screen reader announcement is desired.

To create such a region:

  • Ensure that a visually hidden container <div> or <span> is present when the page loads. - Add aria-live="polite" attribute to this <div> or <span>
  • When the page is in a loading state, use JavaScript to inject text into this <div aria-live="polite"> that describes the loading behavior (e.g., "Loading").

[Compliant Code Example]

N/A

Media Type:

Live Regions

Additional Resources:

  • Report Source: Product accessibility evaluation conducted on the Calcite Design System in August, 2022.
@dqateam dqateam added 0 - new New issues that need assignment. a11y Issues related to Accessibility fixes or improvements. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. needs triage Planning workflow - pending design/dev review. labels Oct 25, 2022
@geospatialem
Copy link
Member

Duplicate of #5587

@geospatialem geospatialem marked this as a duplicate of #5587 Nov 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
0 - new New issues that need assignment. a11y Issues related to Accessibility fixes or improvements. bug Bug reports for broken functionality. Issues should include a reproduction of the bug. needs triage Planning workflow - pending design/dev review.
Projects
None yet
Development

No branches or pull requests

2 participants