AppSemantics class sealed
Fábricas de acessibilidade do Flocks.
Padroniza o uso de Semantics (role + estado + label) para que nenhum
componente monte Semantics à mão. Fica sobre a camada widgets/
semantics (sem Material/Cupertino). Todo componente migrado descreve seu
comportamento de acessibilidade em a11y.en/a11y.pt no .meta.dart, e
tool/component_conformance.dart reprova quem deixar vazio (Regra 8).
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
announce(
BuildContext context, String message, {bool assertive = false}) → void -
Anuncia
messagepara leitores de tela. Useassertiveapenas para interrupções urgentes; o padrão épolite. - Semântica de botão: role de botão + estado enabled + ação de tap. Faz merge do subtree em um nó único (evita leitura dupla de ícone+texto).
-
decorative(
Widget child) → Widget -
Exclui
childda árvore de semântica (ícones/ilustrações decorativos). -
expandable(
{required Widget child, required bool expanded, String? label, String? value, String? hint, bool enabled = true, VoidCallback? onTap}) → Widget - Semântica do gatilho de um seletor que ABRE um painel (dropdown, picker ancorado, combobox).
-
gridCell(
{required Widget child, required String label, required bool selected, bool enabled = true, VoidCallback? onTap}) → Widget - Célula selecionável de uma grade (dia de um calendário, valor de uma roda).
-
header(
Widget child, {bool namesRoute = false}) → Widget -
Marca
childcomo cabeçalho de seção. -
label(
{required Widget child, required String label}) → Widget -
Rótulo semântico único: expõe
childcomo um nó rotulado porlabel, substituindo a semântica interna (via ExcludeSemantics) para evitar leitura duplicada de números/ícones internos. -
liveRegion(
Widget child) → Widget -
Marca
childcomo região viva: mudanças no conteúdo são anunciadas por leitores de tela (alertas/erros). - Contêiner de um menu de ações (agrupa os itens num nó rotulado).
- Item de menu: role de botão + estado enabled + ação de tap (faz merge do subtree para não ler ícone+texto separados).
-
modalRoute(
{required Widget child}) → Widget - Fronteira de ROTA de uma superfície modal (dialog, bottom/side sheet).
-
status(
{required Widget child, required String label}) → Widget -
Região de status: um único
labeldescreve o estado atual (ex.: progresso de etapas) e é anunciado quando muda. Exclui a semântica interna dechildpara não ler os elementos visuais de forma redundante. -
textField(
{required Widget child, String? label, String? value, String? hint, bool enabled = true, bool readOnly = false, bool obscured = false, bool multiline = false, bool focused = false}) → Widget - Semântica de campo de texto: role textField + label/value/hint. O texto de erro, quando existir, deve ser embrulhado com liveRegion no ponto de uso.
-
toggle(
{required Widget child, required bool value, bool enabled = true, bool mutuallyExclusive = false, String? label, VoidCallback? onTap}) → Widget - Semântica de toggle (checkbox/switch/radio): estado checked + enabled.
-
tooltip(
{required String message, required Widget child}) → Widget -
Dica de um alvo: expõe
messageno campotooltipdo nó dechild, sem substituir o rótulo que ele já tenha.