Skip to content

fix: make LexicalRichText more accessible - #116

Merged
mkilpatrick merged 14 commits into
mainfrom
lrt-accessibility
Oct 20, 2025
Merged

fix: make LexicalRichText more accessible#116
mkilpatrick merged 14 commits into
mainfrom
lrt-accessibility

Conversation

@mkilpatrick

@mkilpatrick mkilpatrick commented Oct 9, 2025

Copy link
Copy Markdown
Collaborator

This change completely removes Lexical's ContentEditable component and instead renders the html directly, rather than making an editable area readonly. It addresses an accessibility audit:

  • role="textbox" → announces as editable to screen readers.
  • contenteditable="false" → contradicts the role; it’s not actually editable.
  • Not keyboard-focusable (no tabindex, not natively interactive).
  • Impact: Screen readers think it’s an editable text field, but:
    - It cannot be focused with Tab.
    - It isn’t actually editable.
    - It isn’t a native control ( or <textarea>).

Note that this still renders client side only.

@changeset-bot

changeset-bot Bot commented Oct 9, 2025

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: e39c328

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

asanehisa
asanehisa previously approved these changes Oct 9, 2025
Comment thread packages/pages-components/package.json Outdated
asanehisa
asanehisa previously approved these changes Oct 17, 2025
benlife5
benlife5 previously approved these changes Oct 17, 2025
@mkilpatrick
mkilpatrick dismissed stale reviews from benlife5 and asanehisa via b7f1c7e October 20, 2025 14:17
@mkilpatrick
mkilpatrick merged commit 69a8016 into main Oct 20, 2025
17 checks passed
@mkilpatrick
mkilpatrick deleted the lrt-accessibility branch October 20, 2025 14:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants