Re: alertdialog versus dialog questions, also modal versus non-modal

It's a useful distinction for a screen reader.
A screen reader may automatically read from start to end for an 
alertdialog, but for a dialog just read the dialog title and current focus 
chain (including pane or groupbox names for example).

It's not really useful for a screen reader to automatically read an entire 
preferences dialog when it appears, but it is useful to read an 
alertdialog such as "Warning: your email storage is 95% full, please 
delete emails. OK, button". In this case the fact that it was alertdialog 
meant that any explanatory text was not missed by the user.

As far as modal vs. nonmodal, we would need to add an ARIA property or 
special role to make the distinction. If someone can make a case why that 
distinction is important then it could be considered, although I think the 
group has agreed to halt adding new properties until ARIA 1.0 is finished.

- Aaron

James Craig <>
05/28/2008 01:37 AM
alertdialog versus dialog questions, also modal versus non-modal

Apologies if this question has already been discussed, but I fail to 
see a meaningful difference in the ARIA roles for alertdialog and 
dialog. AFAIK, the only discussion of this on the xTech list is the 
following, where Al points out an implementation problem with 
@role="alert dialog"

Implementation issues aside, it seems to me that there is no 
meaningful difference between an alert dialog and a standard dialog. 
Both roles use an application window that receives focus and requires 
some form of user input or acknowledgment. If this is true, they 
should both be standard dialogs, because @role="dialog" appears to be 
just a child role of @role="alert" that also receives focus. Please 
correct me if I'm missing something in the reading or implementation.

For reference:

alertdialog <>
                 A separate window (may be simulated) with an alert, where 
                 focus goes to the window or a control within it.

dialog <>
                 A dialog is a small application window that sits above 
the application
                 and is designed to interrupt the current processing of an 
                 in order to prompt the user to enter information or 
require a response.

The other bit that's not clear from this wording is how to achieve a 
modal versus non-modal dialog. Since dialog is "designed to interrupt 
the current processing of an application," I assume that means it 
maintains a "modal" state and intercepts all input until it is 
dismissed. Have I missed some other allowance for non-modal dialogs?

James Craig

Received on Wednesday, 28 May 2008 09:37:48 UTC