Skip to content

🎨 Palette: [UX improvement] Add Accessibility Info to VS Code StatusBarItem#71

Draft
raccioly wants to merge 1 commit intomainfrom
palette-vscode-accessibility-10616416875242864639
Draft

🎨 Palette: [UX improvement] Add Accessibility Info to VS Code StatusBarItem#71
raccioly wants to merge 1 commit intomainfrom
palette-vscode-accessibility-10616416875242864639

Conversation

@raccioly
Copy link
Copy Markdown
Owner

💡 What

Added accessibilityInformation to the VS Code StatusBarItem to provide meaningful voice feedback for screen readers during initialization and subsequent data refreshes. The activate function was safely updated to async.

🎯 Why

VS Code StatusBarItem objects without explicit accessibilityInformation read out poorly on screen readers, especially when they utilize visual icons (like $(shield)) or shorthand textual representations (CDD: ?). This ensures developers relying on screen readers receive clear context regarding their Canonical-Driven Development score without visual dependency.

📸 Before/After

Before: Screen reader would read the raw text: "$(shield) CDD: ?" or "$(pass) CDD: 85/100 (B)".
After: Screen reader will read: "CDD Score: Unknown" or "CDD Score: 85 out of 100, Good".

♿ Accessibility

  • Added role: 'button' to clearly define the UI element interactability.
  • Dynamically mapped visual states (tooltipStatus) and scores to a human-readable spoken label.
  • Updated error and pending states to provide clear "Unknown" or "Error" verbal feedback.

PR created automatically by Jules for task 10616416875242864639 started by @raccioly

This commit improves the accessibility of the SpecGuard VS Code extension by dynamically setting the `accessibilityInformation` property on the CDD Score `StatusBarItem`. Screen readers will now announce human-readable summaries (e.g., "CDD Score: 85 out of 100, Good") rather than attempting to interpret raw strings with codicons like `$(shield) CDD: 85/100 (B)`. The `activate` function was also updated to be explicitly `async` to correctly support `await refreshScore()`.

Co-authored-by: raccioly <63126795+raccioly@users.noreply.github.com>
@google-labs-jules
Copy link
Copy Markdown
Contributor

👋 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