Skip to content

Accessibility: Incorrect ARIA roles on formatting toolbar (role="menubar" instead of role="toolbar") in RoosterJS v9 #3333

@gauravjha17

Description

@gauravjha17

Screen reader users cannot understand the structure or available formatting options. This makes text editing confusing and significantly reduces usability and efficiency for users relying on assistive technologies.

Parent container should have role="toolbar".

Parent container should have a descriptive aria-label (e.g., "Text formatting options").

Child controls should have role="button" (or use native elements).

The toolbar should be navigable via keyboard (Tab to enter/exit, Arrow keys to navigate between items).

Suggested Fix
Update the semantic structure of the toolbar component:
Change role="menubar" to role="toolbar".
Add an aria-label to the toolbar container.
Change role="menuitem" to role="button" (or remove if using native buttons).

Suggested Code Fix -

"





"

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions