summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArtur Signell <artur@vaadin.com>2015-07-11 00:00:20 +0300
committerVaadin Code Review <review@vaadin.com>2015-07-13 10:33:53 +0000
commit0743bd5b29d31b233de00e47170a48c0e328ce74 (patch)
tree9f6193f2b916a283f65be513c5e4ec90660667b7
parent422d7e780a7aed82930aa2ce78451063fff47e8b (diff)
downloadvaadin-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.html1
-rw-r--r--shared/src/com/vaadin/shared/ui/ui/UIState.java8
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.