diff options
author | Artur Signell <artur@vaadin.com> | 2015-07-11 00:00:20 +0300 |
---|---|---|
committer | Vaadin Code Review <review@vaadin.com> | 2015-07-13 10:33:53 +0000 |
commit | 0743bd5b29d31b233de00e47170a48c0e328ce74 (patch) | |
tree | 9f6193f2b916a283f65be513c5e4ec90660667b7 | |
parent | 422d7e780a7aed82930aa2ce78451063fff47e8b (diff) | |
download | vaadin-framework-0743bd5b29d31b233de00e47170a48c0e328ce74.tar.gz vaadin-framework-0743bd5b29d31b233de00e47170a48c0e328ce74.zip |
Use role=alert for all notifications (#17079)
Jaws for Windows (at least up to Jaws 16) does not announce any role=status
messages at all so the user will not hear any tray messages or assistive
messages without this change
Change-Id: Ia110d96b8254b98ed66f0765330865099e729abc
-rw-r--r-- | WebContent/release-notes.html | 1 | ||||
-rw-r--r-- | shared/src/com/vaadin/shared/ui/ui/UIState.java | 8 |
2 files changed, 7 insertions, 2 deletions
diff --git a/WebContent/release-notes.html b/WebContent/release-notes.html index ea65948baa..b7cdba7887 100644 --- a/WebContent/release-notes.html +++ b/WebContent/release-notes.html @@ -113,6 +113,7 @@ <li>Widgetset files and other pre-compressed resources are sent as gzip to compatible browsers. This may interfere with custom response compression solutions that do not respect the Content-Encoding response header.</li> <li>Unused methods related to the "out of sync" message have been removed from SystemMessages class.</li> + <li>All notifications use the WAI-ARIA alert role to be compatible with Jaws</li> </ul> <h3 id="knownissues">Known Issues and Limitations</h3> <ul> diff --git a/shared/src/com/vaadin/shared/ui/ui/UIState.java b/shared/src/com/vaadin/shared/ui/ui/UIState.java index 2f51fef6ee..6f7a531eb6 100644 --- a/shared/src/com/vaadin/shared/ui/ui/UIState.java +++ b/shared/src/com/vaadin/shared/ui/ui/UIState.java @@ -43,12 +43,16 @@ public class UIState extends TabIndexState { notificationConfigurations.put("humanized", new NotificationTypeConfiguration("Info: ", null, NotificationRole.ALERT)); + + // We use alert instead of status for all notifications because + // (at least) Jaws 16 and earlier fail to announce any role=status + // message in Chrome/Firefox notificationConfigurations.put("tray", new NotificationTypeConfiguration("Status: ", null, - NotificationRole.STATUS)); + NotificationRole.ALERT)); notificationConfigurations.put("assistive", new NotificationTypeConfiguration("Note: ", null, - NotificationRole.STATUS)); + NotificationRole.ALERT)); } /** * State related to the Page class. |