Skip to content

🎨 Palette: Game Detail Header Accessibility & UX Polish#49

Open
Gamepulse wants to merge 1 commit into
Devfrom
palette/game-detail-accessibility-polish-11149987766972798003
Open

🎨 Palette: Game Detail Header Accessibility & UX Polish#49
Gamepulse wants to merge 1 commit into
Devfrom
palette/game-detail-accessibility-polish-11149987766972798003

Conversation

@Gamepulse

Copy link
Copy Markdown
Owner

💡 What: The UX enhancement added

This PR improves the accessibility and micro-interactions of the GameDetailHeader component. Key changes include:

  • A new Clear Rating button that allows users to reset their personal rating to null (previously impossible with the range slider).
  • ARIA & Keyboard accessibility improvements: added labels, pressed states, and high-contrast focus rings to all interactive elements.
  • Semantic HTML: converted the folder path click-target from a <p> tag to a proper <button>.
  • Internationalization: added new translation keys for the "Clear Rating" action.
  • Build stability: fixed a TypeScript error in GameScreenshotsCarousel caused by an unused state variable.

🎯 Why: The user problem it solves

  • Users couldn't unset a personal rating once it was set.
  • Keyboard-only and screen reader users had no way to interact with the folder path or know the state of the favorite toggle.
  • Interactive elements lacked visual focus indicators, making navigation difficult without a mouse.

♿ Accessibility: Any a11y improvements made

  • Added aria-label and aria-pressed to icon-only buttons.
  • Used htmlFor to link labels with form controls.
  • Marked decorative emojis and overlays with aria-hidden="true".
  • Implemented focus-visible rings for all interactive headers.
  • Used semantic <button> for all actions.

PR created automatically by Jules for task 11149987766972798003 started by @Gamepulse

- Added "Clear Rating" button to personal rating slider to allow unsetting ratings
- Improved favorite button accessibility with ARIA labels, pressed states, and focus indicators
- Converted folder path to semantic button for keyboard accessibility
- Associated platform selector label with select element using htmlFor
- Marked decorative branding and emojis as aria-hidden
- Added missing translations for clearRating in English and French
- Cleaned up unused state in GameScreenshotsCarousel to fix build failure

Co-authored-by: Gamepulse <8333979+Gamepulse@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown

👋 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 @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

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.

1 participant