Re: Fw: [NVDA] #2390: NVDA doesn't handle role=dialog with supporting ARIA attributes according to spec

Bryan,
This isn't correct. Putting role="presentation" on a DIV does absolutely
nothing. The presentation role only modifies the native semantics of the
element itself, not the element's children (unless the element has child
elements which are only valid in context of the parent such as a grid or
list). DIV has no native semantics so there is nothing to change. Any text
children of an element with presentation role are also still present in the
accessibility tree.

I'm not sure why you are trying to prevent the list from being included in
the accessibility tree - but if this is really what you want to do then you
can either use display:none to hide it from everyone or aria-hidden="true"
which would only hide it when accessing through the accessibility APIs.

Regards,
James

On Wed, May 30, 2012 at 10:00 AM, Bryan Garaventa <
bryan.garaventa@whatsock.com> wrote:

> Well, here is my reply. If I'm incorrect about this, let me know.
>
>
> ----- Original Message ----- From: "NVDA Trac" <
> noreply+nvdaTrac@nvaccess.org**>
> Cc: <nvda-dev@lists.nvaccess.org>
> Sent: Wednesday, May 30, 2012 9:53 AM
>
> Subject: Re: [NVDA] #2390: NVDA doesn't handle role=dialog with supporting
> ARIA attributes according to spec
>
>
>  #2390: NVDA doesn't handle role=dialog with supporting ARIA attributes
>> according
>> to spec
>> ------------------------------**-+------------------------
>>       Reporter:  bgaraventa  |       Owner:
>>           Type:  defect      |      Status:  new
>>       Priority:  minor       |   Milestone:
>>      Component:  Core        |     Version:  2012.2rc1
>>     Resolution:              |    Keywords:  ARIA
>> Operating system:  Windows XP  |  Blocked by:
>>       Blocking:              |
>> ------------------------------**-+------------------------
>>
>> Comment (by bgaraventa):
>>
>> I understand what you said about alertdialog, however dialog and
>> alertdialog are not the same widget type. If they were the same, there
>> would be no need for two separate roles in the spec.
>>
>> alertdialog is meant to have its content announced automatically, whereas
>> dialogs are not. There are cases where both are valuable implementations.
>>
>> The problem here is that NVDA is enforcing alertdialog behavior
>> regardless, and ignoring cases when a simple dialog is more accessible.
>>
>> The case for making role=presentation only apply to direct descendants
>> doesn't work in practice, especially when you have other role types in the
>> mix.
>>
>> E.G
>>
>> <div role=presentation>
>> <ul role=listbox>
>> ... Countries List ...
>> </ul>
>> </div>
>>
>> Since you can't change the roles of an object without rerendering the
>> object, this is the only way to prevent the list from being included, but
>> if you are only including the first level of descendants, then none of the
>> list items are included in the calculation.
>>
>> This is also true for more complex controls like data tables, ARIA grids,
>> and so on. There has to be a way of roping off content like this
>> programmatically to ensure accessibility.
>>
>> --
>> Ticket URL: <http://www.nvda-project.org/**ticket/2390#comment:8<http://www.nvda-project.org/ticket/2390#comment:8>
>> >
>>
>> NVDA <http://www.nvda-project.org/>
>> A free and open-source screen reader for Windows
>>
>>
>
>

Received on Wednesday, 30 May 2012 17:46:28 UTC