audit-accessibility

Garantir que os componentes de UI personalizados do plugin sejam acessíveis para usuários de leitores de tela e outras tecnologias assistivas.

npx skills add https://github.com/flutter/flutter-intellij --skill audit-accessibility

Skill: Accessibility (A11y) Audit

You are tasked with ensuring the plugin's custom UI components are accessible to users with screen readers and other assistive technologies.

Objective

Ensure the plugin's custom UI components are accessible to users with screen readers and other assistive technologies.

Workflow Instructions

1. Baseline

  • Run ./gradlew testClasses to ensure project compilation.
  • Run ./gradlew test to ensure the project is stable.
  • Run ./gradlew verifyPlugin to ensure no verification issues.

2. Identify Custom UI

  • List all custom JPanel, JComponent, or Dialog classes in the codebase.

3. Check Properties

  • Verify that every interactive component has:
    • getAccessibleContext().setAccessibleName(...)
    • getAccessibleContext().setAccessibleDescription(...)

4. Focus Management

  • Ensure custom components handle focus traversal correctly (Tab/Shift+Tab).

5. Color Contrast

  • If custom colors are used, verify they meet WCAG contrast guidelines (especially for dark themes).

6. Verify

  • Run ./gradlew testClasses and ./gradlew test to ensure no regressions.
  • Run ./gradlew verifyPlugin to ensure strict compliance.
  • Use the "Accessibility Inspector" (if available in the SDK) or a screen reader to navigate the UI.
  • Suggest manual test steps: Check the code changes made and write test steps for a user to execute that will trigger the code paths that have changed. If needed, add logging statements to verify that the code paths have successfully run.

7. Report & Review

  • Summarize the accessibility improvements in the form of a git commit message.
  • Test Location: Explicitly state where in the IDE the user should go to test the changed functionality (e.g., "Go to Preferences > Languages & Frameworks > Flutter").
  • Action: Ask the user to review the UI changes closely.
  • Do not commit or push.

Mais skills de flutter

dart-modern-features
flutter
Para encontrar candidatos para modernização:
flutter-fix-layout-issues
flutter
Corrige erros de layout do Flutter (overflow, restrições ilimitadas) usando ferramentas Dart e Flutter MCP. Use ao lidar com "RenderFlex overflowed", "Vertical…
adding-release-notes
flutter
Adiciona descrições de mudanças voltadas ao usuário nas notas de versão do DevTools. Use ao documentar melhorias, correções ou novos recursos no arquivo NEXT_RELEASE_NOTES.md.
reviewing-devtools-prs
flutter
Fluxo de revisão de PR específico do repositório DevTools, aplicando as diretrizes de estilo do DevTools e padrões comuns de revisão. Use ao revisar pull requests no…
dart-use-primary-constructors
flutter
Ajude os usuários a escrever construtores primários sintática e semanticamente corretos em Dart, e a migrar/usar a nova sintaxe de construtores, a sintaxe de corpo vazio com ponto e vírgula,…
code-documentation
flutter
Guia para escrever documentação de código eficaz, incluindo docstrings, JSDoc, dartdoc e comentários de implementação. Use esta skill ao escrever novo código, adicionar…
api-review
flutter
Revisa o código especificado em relação às diretrizes canônicas de Design de API. Use esta skill quando o usuário pedir uma revisão de API ou para verificar o código em relação ao design de API…
flutter-accessibility
flutter
Implementa os padrões de acessibilidade WCAG 2 e EN 301 549 e layouts adaptativos em aplicativos Flutter. Aplica anotações semânticas, tamanhos mínimos de alvo de toque (48x48 dp) e taxas de contraste de texto (4,5:1 para texto pequeno, 3:1 para texto grande) nas plataformas mobile, web e desktop. Inclui lógica de decisão para inicialização de semântica web, encapsulamento de widgets interativos, alternância de layout baseada no tamanho da tela e tratamento de entrada por teclado/mouse. Gerencia o percurso de foco via FocusTraversalGroup e...