-
Notifications
You must be signed in to change notification settings - Fork 31
[BUG] [alpha] Git Submodule View: silent status badges and unlabelled loading spinner #29493
Copy link
Copy link
Open
Labels
Description
Project
ide
Description
The Git submodule interface within the Git Panel contains accessibility violations that hinder screen reader users and keyboard navigation:
- Silent Status Badges: Submodule status indicators (e.g., "initialized", "modified") are implemented using the
Badgecomponent withoutaria-labelor context. Screen readers only announce the status text without explaining its purpose (e.g., "Status: modified"). - Unlabelled Loading Spinner: The loading indicator shown while fetching submodules is an
Iconcomponent with noaria-labeloraria-liveregion, making the loading state invisible to screen reader users. - Missing List Semantics: The list of submodules is rendered as a series of
ListItemcomponents inside adivwithout any list roles (role="list"), which fails to provide structural context to assistive technologies.
Screenshots
System Information
- OS: Linux (Ubuntu 24.04)
- CPU: 8 cores
- RAM: 24GB
- Cortex IDE Version: 2.22.0 (Alpha)
Screenshots
(No screenshots provided)
Steps to Reproduce
- Open the Git Panel.
- Switch to the Submodules tab.
- Observe the loading spinner while submodules are being fetched.
- Inspect the submodule items in the list, specifically the status badges and the overall list container.
Expected Behavior
- The loading spinner should have
aria-label="Loading submodules..."and be placed in anaria-live="polite"region. - Status badges should have prefixing labels for screen readers, such as
aria-label={"Status: " + sub.status}. - The list container should have
role="list"and submodule items should haverole="listitem".
Actual Behavior
- The loading spinner is a "silent" icon.
- Badges only contain raw text.
- The list provides no structural landmarks for screen readers.
Code References
- Loading Spinner: GitPanel.tsx:2150
- Status Badges: GitPanel.tsx:2215
- Submodule List: GitPanel.tsx:2169
Recommendation
- Add
aria-labelto the loading spinnerIcon. - Wrap status badges in a visually hidden prefix or use
aria-label. - Add
role="list"to the submodule list container androle="listitem"to the items.
Reactions are currently unavailable