implemented comprehensive accessibility (A11y) support across the app
This commit is contained in:
@@ -107,16 +107,26 @@ class _LoadableStateErrorBarTextState extends State<LoadableStateErrorBarText> {
|
||||
var bloc = context.watch<LoadableStateBloc>();
|
||||
final foreground = bloc.connectionForegroundColor(context);
|
||||
|
||||
return Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Icon(bloc.connectionIcon(), size: 14, color: foreground),
|
||||
const SizedBox(width: 10),
|
||||
Text(
|
||||
bloc.connectionText(lastUpdated: widget.lastUpdated),
|
||||
style: TextStyle(fontSize: 12, color: foreground),
|
||||
// liveRegion, damit das Auftauchen des Offline-/Fehlerbanners angesagt wird;
|
||||
// Row-Semantik ausgeschlossen (Icon + Text) und Text über das explizite
|
||||
// Label getragen, sonst liest der Screenreader ihn doppelt.
|
||||
return Semantics(
|
||||
liveRegion: true,
|
||||
container: true,
|
||||
label: bloc.connectionText(lastUpdated: widget.lastUpdated),
|
||||
child: ExcludeSemantics(
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Icon(bloc.connectionIcon(), size: 14, color: foreground),
|
||||
const SizedBox(width: 10),
|
||||
Text(
|
||||
bloc.connectionText(lastUpdated: widget.lastUpdated),
|
||||
style: TextStyle(fontSize: 12, color: foreground),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -248,6 +248,7 @@ class AppModule {
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
IconButton(
|
||||
tooltip: isVisible ? 'Modul ausblenden' : 'Modul einblenden',
|
||||
onPressed: onVisibleChange,
|
||||
icon: Icon(
|
||||
isVisible
|
||||
|
||||
Reference in New Issue
Block a user