[UEPR-487] Make the Sound Editor fully navigable via keyboard#445
Merged
adzhindzhi merged 4 commits intoscratchfoundation:release/UEPR-297-accessibility-improvementsfrom Feb 17, 2026
Conversation
…button and improved aria-labels
8e56af1 to
9262f0d
Compare
9262f0d to
1cec70a
Compare
adzhindzhi
reviewed
Feb 13, 2026
Contributor
adzhindzhi
left a comment
There was a problem hiding this comment.
I left one small comment, but otherwise it looks good!
Contributor
There was a problem hiding this comment.
Pull request overview
This PR enhances keyboard accessibility for the Sound Editor by implementing proper ARIA attributes, focus management, and button state handling. The changes align with WCAG accessibility guidelines and improve the experience for keyboard and screen reader users.
Changes:
- Replaced HTML
titleattributes witharia-labelfor icon-only buttons (Play, Stop, Undo, Redo) to improve screen reader support - Removed custom
tabIndex="1"to maintain natural tab order for keyboard navigation - Added native
disabledattribute to IconButton component for proper focus management and accessibility - Removed
outline: nonefrom play/stop buttons to enable visible focus indicators - Fixed typo:
stopButtonn→stopButton
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| packages/scratch-gui/src/components/sound-editor/sound-editor.jsx | Replaced title with aria-label for Play/Stop/Undo/Redo buttons; removed tabIndex="1"; fixed CSS class typo |
| packages/scratch-gui/src/components/sound-editor/sound-editor.css | Removed outline: none from .round-button to allow focus indicators |
| packages/scratch-gui/src/components/icon-button/icon-button.jsx | Added native disabled attribute to button element for proper accessibility |
| packages/scratch-gui/test/unit/containers/sound-editor.test.jsx | Updated test selectors from getByTitle to getByRole with accessible name |
| packages/scratch-gui/test/unit/components/sound-editor.test.jsx | Updated test selectors from title attribute to aria-label attribute |
| packages/scratch-gui/test/integration/sounds.test.js | Updated XPath selector from title to aria-label |
| packages/scratch-gui/test/unit/containers/snapshots/sound-editor.test.jsx.snap | Updated snapshot to reflect aria-label instead of title, removed tabindex, added disabled |
| packages/scratch-gui/test/unit/components/snapshots/sound-editor.test.jsx.snap | Updated snapshot to reflect aria-label instead of title, removed tabindex |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
adzhindzhi
reviewed
Feb 17, 2026
17c9ed9 to
a6bdd0b
Compare
624eadf
into
scratchfoundation:release/UEPR-297-accessibility-improvements
6 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves
https://scratchfoundation.atlassian.net/browse/UEPR-487
Proposed Changes
Improved accessibility
Reason for Changes
Part of accessibility initiative for Scratch.
Test Coverage
Tests were already written for the Editor.