🎨 Palette: Accessible Icon Buttons (x4)#1150
Conversation
- 🎯 **Cluster:** Missing/Incomplete ARIA labels for icon-centric buttons and interactive elements. - 📄 **Files:** `Lightbox.astro`, `ContactForm.astro`, `[slug].astro`, `project/[slug].astro`. - ♿ **A11y:** WCAG 2.1 Non-text Content (1.1.1) and Keyboard shortcuts (2.1.4). Added explicit keyboard shortcuts `(Esc)`, `(←)`, and `(→)` to Lightbox navigation controls for improved screen reader discoverability. Refined validation buttons in ContactForm and improved client-side DOM injection for "Copy Code" buttons.
|
👋 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. |
This PR introduces a coherent batch of micro-UX accessibility improvements focusing on icon-centric buttons across the project, ensuring robust label definition and shortcut discoverability.
Improvements Include:
Lightbox.astro: Appended explicit keyboard shortcut hints(Esc),(←), and(→)to thearia-labelattributes of the modal's close, previous, and next controls. This provides parity for screen reader users compared to the visual<kbd>hints shown on hover/focus.ContactForm.astro: Removed redundantaria-label="Envoyer un autre message"andaria-label="Réessayer l'envoi du message"on text-heavy reset/retry buttons to prevent screen reader redundancy, keeping focus purely on native text content.[slug].astroandproject/[slug].astro: Refactored dynamic code-block copy button injection to use standardbtn.setAttribute("aria-label", ...)instead ofbtn.ariaLabel, ensuring consistent behavior across environments.All changes were verified against the test suite, linted, and visually verified using Playwright screenshots.
PR created automatically by Jules for task 1673485523772439899 started by @kuasar-mknd