Bug 133133 - AX: [ATK] Children of tables and lists with role='presentation' should each be exposed as if they were div elements
Summary: AX: [ATK] Children of tables and lists with role='presentation' should each b...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Accessibility (show other bugs)
Version: 528+ (Nightly build)
Hardware: All Linux
: P2 Normal
Assignee: Joanmarie Diggs (irc: joanie)
URL:
Keywords: InRadar
Depends on:
Blocks: 25531
  Show dependency treegraph
 
Reported: 2014-05-20 13:58 PDT by Joanmarie Diggs (irc: joanie)
Modified: 2014-06-05 16:53 PDT (History)
9 users (show)

See Also:


Attachments
accessible-event listener (536 bytes, text/x-python)
2014-05-20 13:58 PDT, Joanmarie Diggs (irc: joanie)
no flags Details
test case (376 bytes, text/html)
2014-05-20 13:58 PDT, Joanmarie Diggs (irc: joanie)
no flags Details
Patch (9.63 KB, patch)
2014-06-05 15:13 PDT, Joanmarie Diggs (irc: joanie)
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Joanmarie Diggs (irc: joanie) 2014-05-20 13:58:12 PDT
Created attachment 231791 [details]
accessible-event listener

Steps to reproduce:
1. Launch the attached accessible-event listener in a terminal
2. Load the attached test case is Epiphany

Expected results: Because the table and unordered list each have role='presentation', the child elements would each be exposed as if they were div elements.

Actual results: The elements with role='presentation' are not exposed, but the role of their children remains unaffected:

-> [document web | ] None
    -> [paragraph | ] text: <The next element is an unordered list with role presentation.>
    -> [list item | item 1] text: <• item 1>
    -> [list item | item 2] text: <• item 2>
    -> [paragraph | ] text: <The next element is a table with role presentation.>
    -> [table cell | ] text: <row 1, col 1>
    -> [table cell | ] text: <row 1, col 2>
    -> [table cell | ] text: <row 2, col 1>
    -> [table cell | ] text: <row 2, col 2>

List items without a parent list or listbox, and table cells without a parent table or row, make no sense.
Comment 1 Joanmarie Diggs (irc: joanie) 2014-05-20 13:58:57 PDT
Created attachment 231792 [details]
test case
Comment 2 Radar WebKit Bug Importer 2014-05-20 13:59:56 PDT
<rdar://problem/16978141>
Comment 3 Joanmarie Diggs (irc: joanie) 2014-06-05 15:13:11 PDT
Created attachment 232584 [details]
Patch
Comment 4 Joanmarie Diggs (irc: joanie) 2014-06-05 15:28:49 PDT
Mario and Chris: Hopefully this is a quick review.

Chris: With or without my change, on the Mac, list items in a presentational list result in AXStaticText objects that are direct descendants of the AXWebArea.

In contrast, on my Mac:

  <body><span>foo</span></body>

and

  <body><div>foo</div></body>

each result in:

-> AXWebArea
   -> AXGroup
      -> AXStaticText ("foo")

Should the presentational list item AXStaticText objects also be descendants of an AXGroup?
Comment 5 chris fleizach 2014-06-05 15:58:42 PDT
(In reply to comment #4)
> Mario and Chris: Hopefully this is a quick review.
> 
> Chris: With or without my change, on the Mac, list items in a presentational list result in AXStaticText objects that are direct descendants of the AXWebArea.
> 
> In contrast, on my Mac:
> 
>   <body><span>foo</span></body>
> 
> and
> 
>   <body><div>foo</div></body>
> 
> each result in:
> 
> -> AXWebArea
>    -> AXGroup
>       -> AXStaticText ("foo")
> 
> Should the presentational list item AXStaticText objects also be descendants of an AXGroup?

I don't think it's strictly necessary. it depends on what the parent object is. a <div> or <span> may not generate an AXGroup
Comment 6 WebKit Commit Bot 2014-06-05 16:53:47 PDT
Comment on attachment 232584 [details]
Patch

Clearing flags on attachment: 232584

Committed r169631: <http://trac.webkit.org/changeset/169631>
Comment 7 WebKit Commit Bot 2014-06-05 16:53:51 PDT
All reviewed patches have been landed.  Closing bug.