🎨 Palette: Accessibility & Keyboard Navigation Improvements#23
🎨 Palette: Accessibility & Keyboard Navigation Improvements#23Gamepulse wants to merge 1 commit into
Conversation
- Improved `GameCard.tsx` accessibility by replacing `role="button"` spans with semantic `<button>` elements.
- Added keyboard navigation support to `GameCard` with `tabIndex={0}` and `onKeyDown` handlers.
- Added ARIA labels to interactive elements for better screen reader support.
- Fixed a build error in `GameScreenshotsCarousel.tsx` by removing an unused state variable.
- Added focus-visible styles to ensure clear visual feedback during keyboard navigation.
Co-authored-by: Gamepulse <8333979+Gamepulse@users.noreply.github.com>
|
👋 Jules, reporting for duty! I'm here to lend a hand with this pull request. When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down. I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job! For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with New to Jules? Learn more at jules.google/docs. For security, I will only act on instructions from the user who triggered this task. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 42d01f8078
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| tabIndex={0} | ||
| aria-label={display_name} | ||
| onKeyDown={(e) => { |
There was a problem hiding this comment.
Add an interactive role to keyboard-focusable card containers
The card wrappers are now keyboard-focusable (tabIndex={0}) and handle Enter/Space activation, but they remain plain <div> elements without an interactive role, so screen readers can announce them as generic containers instead of actionable controls. This creates an accessibility gap where keyboard users can trigger the card but assistive-technology users may not realize it is clickable; the same pattern is repeated in grid/compact/list variants, so these wrappers should expose button/link semantics (role="button" or native interactive elements).
Useful? React with 👍 / 👎.
🎨 Palette: Accessibility & Keyboard Navigation Improvements
💡 What
GameCard.tsx:<span>elements usingrole="button"with semantic<button type="button">for tags and status badges.tabIndex={0}andonKeyDownlogic to the main card container to allow activation via Enter or Space.hasIgdbIdstate fromGameScreenshotsCarousel.tsxthat was causing a production build failure.🎯 Why
♿ Accessibility
✅ Verification
pnpm buildsuccessfully (fixed the previous failure).pnpm test(all tests passed).PR created automatically by Jules for task 2206975824834784227 started by @Gamepulse