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

[Uptime] Focus is lost when navigating to a new route #100725

Closed
Tracked by #135760
dominiqueclarke opened this issue May 26, 2021 · 5 comments
Closed
Tracked by #135760

[Uptime] Focus is lost when navigating to a new route #100725

dominiqueclarke opened this issue May 26, 2021 · 5 comments
Labels
accessibility best practice bug Fixes for quality problems that affect the customer experience Team:Uptime - DEPRECATED Synthetics & RUM sub-team of Application Observability v8.0.0

Comments

@dominiqueclarke
Copy link
Contributor

dominiqueclarke commented May 26, 2021

Kibana version:
8.x

Elasticsearch version:
8.x

Server OS version:
macOS

Browser version:
Chrome 90.x

Browser OS version:
macOS

Original install method (e.g. download page, yum, from source, etc.):
from source

Describe the bug:
When navigating to an Uptime route using the keyboard, focus is lost. This happens when the previously focused element is unmounted. This leaves keyboard/assistive technology users lost without context of what changed on the page.

One common best practice is to focus on the h1 of the page on route changes. However, there are a few different approaches available. We could check in with the a11y team to see what is recommended at Elastic.

Steps to reproduce:

  1. Turn on the screen reader of your choice
  2. Go to Uptime page
  3. Attempt to drill into a monitor detail page using the keyboard by focusing on the monitor detail name following the instructions from the screen reader to follow the link (usually Enter or Ctrl+Option+Shift)
  4. Notice how focus is lost on the next page. The new page name is not announced.

Expected behavior:
Focus should be considered and properly managed on route changes. If we decide to focus on the h1, then the screenreader will announce the title of the page, providing the user with some context as to where they are on the page.

Screenshots (if relevant):
In this example, a keyboard user is using the monitor name to navigate to the monitor details page. Notice how focus is lost when navigating. This causes a situation where the new context of the page is not announced for those who are using screenreader technology.
chrome-capture (6)

Errors in browser console (if relevant):
N/A

Provide logs and/or server output (if relevant):
N/A

@dominiqueclarke dominiqueclarke added bug Fixes for quality problems that affect the customer experience v8.0.0 Team:Uptime - DEPRECATED Synthetics & RUM sub-team of Application Observability accessibility best practice labels May 26, 2021
@elasticmachine
Copy link
Contributor

Pinging @elastic/uptime (Team:uptime)

@myasonik
Copy link
Contributor

We have a few issues around routing (meta: #42379) that, I think, we really need to solve at a more central level (others might say at a more @elastic/kibana-core level 😉) and this fits right in.

This issue is totally right though. If you see some ways to make improvements in your Solution, then that's a great step!

@zuhairmahd zuhairmahd pinned this issue May 11, 2022
@lukeelmers lukeelmers unpinned this issue May 23, 2022
@ghudgins
Copy link

we're making an effort to resolve many of these pending accessibility bugs in 8.4. is there a status on this issue?

@1Copenut
Copy link
Contributor

1Copenut commented Aug 8, 2022

@ghudgins We created a new meta issue #135760 to track all of the applications making the switch to this universal focus management & screen reader announcement pattern. Uptime looks to be the second one added to the list.

Please feel free to add more applications to the meta list as it makes sense to do so. Anything I can do to help spread the word with product teams, LMK.

@paulb-elastic
Copy link
Contributor

Not going to change Uptime, closing

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accessibility best practice bug Fixes for quality problems that affect the customer experience Team:Uptime - DEPRECATED Synthetics & RUM sub-team of Application Observability v8.0.0
Projects
None yet
Development

No branches or pull requests

6 participants