VERIFIED FIXED Bug 25414
[GTK] ROLE_PANEL should not be used for paragraphs and list items.
https://bugs.webkit.org/show_bug.cgi?id=25414
Summary [GTK] ROLE_PANEL should not be used for paragraphs and list items.
Joanmarie Diggs
Reported 2009-04-26 16:49:49 PDT
Steps to reproduce: 1. View the (to be) attached document in WebKit Gtk. 2. Examine any of the paragraphs (i.e. items formatted with <p></p>) and list items (i.e. items formatted with <li></li>) using Accerciser. Expected results: Paragraphs would be exposed as being of ROLE_PARAGRAPH; list items as ROLE_LIST_ITEM. Actual results: Paragraphs and list items are exposed as ROLE_PANEL.
Attachments
aforementioned test case (432 bytes, text/html)
2009-04-26 16:51 PDT, Joanmarie Diggs
no flags
paragraphrole.patch (2.25 KB, patch)
2009-05-20 05:59 PDT, Xan Lopez
jmalonzo: review+
listitemrole.patch (2.38 KB, patch)
2009-05-20 06:00 PDT, Xan Lopez
jmalonzo: review+
Joanmarie Diggs
Comment 1 2009-04-26 16:51:08 PDT
Created attachment 29807 [details] aforementioned test case
Xan Lopez
Comment 2 2009-05-20 05:59:37 PDT
Created attachment 30505 [details] paragraphrole.patch Implement ATK_ROLE_PARAGRAPH.
Xan Lopez
Comment 3 2009-05-20 06:00:00 PDT
Created attachment 30506 [details] listitemrole.patch Implement ATK_ROLE_LIST_ITEM.
Jan Alonzo
Comment 4 2009-05-20 06:33:28 PDT
Comment on attachment 30506 [details] listitemrole.patch > + // WebCore does not seem to have a role for list items > + if (AXObject->roleValue() == GroupRole) { Why? List is not a child role of group so I don't think it's required (http://www.w3.org/TR/wai-aria/#group) > + AccessibilityObject* parent = AXObject->parentObjectUnignored(); > + if (parent && parent->roleValue() == ListRole) You can just isList() here instead.
Jan Alonzo
Comment 5 2009-05-20 06:59:58 PDT
Comment on attachment 30506 [details] listitemrole.patch > + // WebCore does not seem to have a role for list items > + if (AXObject->roleValue() == GroupRole) { isGroup() > + AccessibilityObject* parent = AXObject->parentObjectUnignored(); > + if (parent && parent->roleValue() == ListRole) isList() With those changes, r=me.
Jan Alonzo
Comment 6 2009-05-20 07:13:06 PDT
Comment on attachment 30505 [details] paragraphrole.patch Please check if we have a node() first just in case we may not have one. r=me.
Xan Lopez
Comment 7 2009-05-20 07:33:50 PDT
(In reply to comment #5) > (From update of attachment 30506 [details] [review]) > > + // WebCore does not seem to have a role for list items > > + if (AXObject->roleValue() == GroupRole) { > > isGroup() > > > + AccessibilityObject* parent = AXObject->parentObjectUnignored(); > > + if (parent && parent->roleValue() == ListRole) > > isList() > > With those changes, r=me. > Thanks, landed as r43907.
Xan Lopez
Comment 8 2009-05-20 07:34:14 PDT
(In reply to comment #6) > (From update of attachment 30505 [details] [review]) > Please check if we have a node() first just in case we may not have one. > > r=me. > Done so and landed as r43908.
Joanmarie Diggs
Comment 9 2009-05-20 12:42:27 PDT
Thanks Xan. Marking as VERIFIED.
Note You need to log in before you can comment on or make changes to this bug.