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

a11y: Fix keyboard navigation, role, aria-labels and focus display issues on the side navigation component #12780

Open
nwmac opened this issue Dec 4, 2024 · 7 comments · Fixed by #13177
Assignees
Labels
area/accessibility kind/enhancement priority/0 QA/manual-test Indicates issue requires manually testing size/3 Size Estimate 3
Milestone

Comments

@nwmac
Copy link
Member

nwmac commented Dec 4, 2024

a11y Issues: 35, 40, 41

Issue 35
The side navigation expand/collapse button (see below) does not show keyboard focus and does not response to enter/space to activate.

image

Issue 40

A focus indicator is not visually available as user tabs through mentioned interactive elements using a keyboard resulting in users with learning and mobility impairments as well as those with low vision not being able to easily find out which element currently has the focus.

Header Area

  • Import YAML
  • Kubectl Shell
  • Download KubeConfig
  • Copy KubeConfig to Clipboard
  • Resource Search
  • Projects/Namespaces
  • Nodes 1
  • Cluster and Project Members
  • Events 0 and so on.

image

Issue 41

On activating the mentioned instances, the content below gets expanded/collapsed dynamically, although the dynamic change in the content is easier to understand for sighted users, it is not intuitive for screen reader users.

  • Main Content
  • Starred
  • Cluster
  • Workloads
  • Apps
  • Service Discovery
    and so on.

image

@nwmac nwmac added this to the v2.11.0 milestone Dec 4, 2024
@github-actions github-actions bot added the QA/dev-automation Issues that engineers have written automation around so QA doesn't have look at this label Dec 4, 2024
@nwmac nwmac changed the title a11y: Fix keyboard navigation and focus display issues on the side navigation component a11y: Fix keyboard navigation, role, aria-labels and focus display issues on the side navigation component Dec 4, 2024
@nwmac nwmac added size/2 Size Estimate 2 size/3 Size Estimate 3 and removed size/1 Size Estimate 1 size/2 Size Estimate 2 labels Dec 4, 2024
@aalves08 aalves08 assigned aalves08 and unassigned aalves08 Jan 3, 2025
@aalves08 aalves08 self-assigned this Jan 20, 2025
@aalves08 aalves08 mentioned this issue Jan 22, 2025
7 tasks
@yonasberhe23
Copy link
Contributor

Needs manual validation.

@yonasberhe23 yonasberhe23 added QA/manual-test Indicates issue requires manually testing and removed QA/dev-automation Issues that engineers have written automation around so QA doesn't have look at this labels Jan 24, 2025
@IsaSih IsaSih self-assigned this Jan 29, 2025
@IsaSih
Copy link
Contributor

IsaSih commented Jan 29, 2025

Observations:
for the side menu, the space bar does not select the sub-options of the side menu, just the main options. Is this expected?

Image

Also, I observed that by selecting a cluster in the burger menu bar, the tab navigation doesnt change the focus to the side navigation component, but stays in the burger menu bar. In terms of usability, I suggest that once a cluster is selected from the burger menu, that the focus should then move to the side navigation so that the user accesses the cluster resources

@IsaSih
Copy link
Contributor

IsaSih commented Jan 29, 2025

As shown in the screenshot, the test fails issue 40. There's no focus nor tab navigation in the header area. Feature is working only for the Projects/Namespaces selection and the user logout icon.

Tested in

Rancher v2.11-a1bda936c809e0394520c9d40d2998529223401e-head
Dashboard master c987984
Rancher CLI v2.11.0-rc.1

@aalves08
Copy link
Member

As shown in the screenshot, the test fails issue 40. There's no focus nor tab navigation in the header area. Feature is working only for the Projects/Namespaces selection and the user logout icon.

Tested in

Rancher v2.11-a1bda936c809e0394520c9d40d2998529223401e-head
Dashboard master c987984
Rancher CLI v2.11.0-rc.1

I forgot that this had header items associated with the issue. Please ignore those 🙏

We've decided to tackle the header part in one go, since it's a problematic area to fix in terms of accessibility, especially because of the modals part. I would say that the following issues track the work needed on the header:

#12790
#12772
#8113
#12779
#12778

I've got a WIP PR for the header: #13011, which I am tackling at the moment.

So I would say to ignore the header part on this issue for now.

FYI @rak-phillip

@aalves08
Copy link
Member

Observations: for the side menu, the space bar does not select the sub-options of the side menu, just the main options. Is this expected?

As per #12959 (comment), we should not use the space key for links, hence my decision on the sub-options. The main options, imo, have a double role here: they act as a link but they also expand their sub-menu. I've decided to keep the space as an action key because of that.

Also, I observed that by selecting a cluster in the burger menu bar, the tab navigation doesnt change the focus to the side navigation component, but stays in the burger menu bar. In terms of usability, I suggest that once a cluster is selected from the burger menu, that the focus should then move to the side navigation so that the user accesses the cluster resources

I think we need input from UX on this part @kwwii @edenhernandez-suse

@edenhernandez-suse
Copy link

Also, I observed that by selecting a cluster in the burger menu bar, the tab navigation doesnt change the focus to the side navigation component, but stays in the burger menu bar. In terms of usability, I suggest that once a cluster is selected from the burger menu, that the focus should then move to the side navigation so that the user accesses the cluster resources

This is a tricky one in our environment since our title (the cluster name) is in the top bar and not inside the main content. My approach to this one would be to shift focus to the side navigation, with a first hidden tab element for "Skip to content" before the first navigation item (in case of doubts, I'm talking about this: Skip to main content). That would allow users to directly jump to the cluster dashboard without tabbing through the entire side navigation.

@aalves08
Copy link
Member

@IsaSih , I've created #13253 to track your suggestion + @edenhernandez-suse solution.

Given the fact that I've answered about the part that reopened this issue #12780 (comment), can we close this one?

FYI @nwmac @rak-phillip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/accessibility kind/enhancement priority/0 QA/manual-test Indicates issue requires manually testing size/3 Size Estimate 3
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants