IHK-GfI / lux-components

Other
17 stars 5 forks source link

Fehlerhafte Aria-Referenz bei den lux-Form-controls #419

Closed patrowe closed 3 months ago

patrowe commented 4 months ago

Dieses ist ein Sammelticket für die Form-Controls, für "kleinere" Fehler im Layout.

patrowe commented 4 months ago

Die Prüfung hat ergeben, dass die Labels in den Formcontrols eine berechnete Größe von 12px haben. Im Zuge der Umstellung auf relative Schriftgrößen wird die Einheit entsprechend ausgetauscht. Dann kann die Größe der Labels über Browsereinstellungen angepasst werden. Vgl. https://github.com/IHK-GfI/lux-components/issues/362

patrowe commented 4 months ago

Die Prüfung des Inputs type="time" hat ergeben, dass das Icon über mat-input gesetzt wird. Das Anzeigen eines Lux-Icons erfordert ein überarbeiten der Input-Komponente und erfordert einen größen Zeitaufwand.

Daher erfolgt die Umbennung des Issues und folgende Festlegung der Anforderungen.

Wie oben gezeigt, ist die Aria-Referenz auf das Hinweis/Errorfeld unterhalb der Formcontrols fehlerhaft. Dieser Fehler tritt bei allen Form-Controls auf und muss gefixt werden.

Aktzeptanzkriterium: Alle Formcontrols wurden überarbeitet so dass

patrowe commented 3 months ago

Die Anforderungen wurden umsetzt.

@DSeifer bitte testen.

patrowe commented 3 months ago

Test

Vorbedingung:

Durchführung Der Test ist für folgende Komponenten durchzuführen: lux-autocomplete-ac, lux-checkbox-ac, lux-datepicker-ac, lux-datetimepicker-ac, lux-file-input-ac, lux-input-ac, lux-select-ac, lux-textarea-ac, lux-toggle-ac

  1. die jeweilige Testseite für die Komponente öffnen.
  2. für die Komponente einen Fehler herbeiführen, dazu die Komponenten aktivieren (ins Textfeld klicken oder toggle benutzen) und danach luxRequired auf true setzen.

Zu erwartendes Ergebnis: Die Fehlermeldung erscheint und wird vom Screenreader bei aktiviertem/fokussiertem Element vorgelesen.

DSeifer commented 3 months ago

Unter Windows 10 Enterprise 22H2 (19045.4170) und MacOS 14.4 mit den jeweils aktuellen Browserversionen getestet:

Windows: Edge -> OK MacOS: Safari Der Text unter dem Toggle "luxRequired" wird immer vorgelesen. -> OK Der Fehlertext wird bei den meisten Komponenten aber erst vorgelesen, wenn das fehlerhafte Feld erneut den Fokus erhält. Beim Verlassen des fehlerhaften Feldes wird nur der Text des als nächsten angesprungenen Feldes vorgelesen. Ist das so gewollt?

patrowe commented 3 months ago

Ja, das ist ein gewolltes Verhalten. Die Errormessage hat das Attribute "polite" und unterbricht deshalb nicht die aktuellen Ansagen. Daher, wird der Fehler in dieser Situation erst vorgelesen, wenn das entsprechende Form-Control den Focus zurückbekommt.