Bug 125493

Summary: [ATK] Some elements show up in the ATK hierarchy with the wrong role
Product: WebKit Reporter: Mario Sanchez Prada <mario>
Component: AccessibilityAssignee: Joanmarie Diggs <jdiggs>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: jdiggs, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: Linux   
Bug Depends on: 125584, 125587, 125594, 125596, 125857    
Bug Blocks:    
Attachments:
Description Flags
Patch none

Mario Sanchez Prada
Reported 2013-12-10 04:13:39 PST
There are some elements that are showing up properly in the ATK hierarchy with the wrong role, so we need to investigate why and fix those. Worth mentioning they do not always show up with the wrong roles, I found this while working in an ATK version of platform/mac/accessibility/role-subrole-roledescription.html, where most of the times those elements do not have children or very basic ones (e.g. <form> element having only the 'X' character as children). So, probably in some of those cases the element should not even show up (e.g. form without form elements?) but we still need to investigate it and fix the wrong role for the cases that should finally show up. The list of identified roles showing up with wrong roles is as follows: * <div role="rowheader"> shows up as ATK_ROLE_CELL, should be ATK_ROLE_ROW_HEADER * <div role="columnheader"> shows up as ATK_ROLE_CELL, should be ATK_ROLE_COLUMN_HEADER * <div role="tree"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_TREE * <div role="treeitem"> shows up as ATK_ROLE_LIST_ITEM, should be ATK_ROLE_TREE_ITEM * <div role="dl"> shows up as ATK_ROLE_LIST, should be ATK_ROLE_DESCRIPTION_LIST as soon as GNOME bug 720065 is fixed[1] * <div role="dt"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DESCRIPTION_TERM as soon as GNOME bug 720065 is fixed[1] * <div role="dd"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DESCRIPTION_VALUE as soon as GNOME bug 720065 is fixed[1] * <div role="form"> shows up as ATK_ROLE_SECTION, should be ATK_ROLE_FORM * <div role="alert"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_ALERT * <div role="alertdialog"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_ALERT * <div role="article"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_ARTICLE * <div role="definition"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DEFINITION * <div role="dialog"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DIALOG * <div role="document"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_DOCUMENT_FRAME * <div role="log"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_LOG * <div role="marquee"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_MARQUEE * <div role="math"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_MATH * <div role="menuitemcheckbox"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_CHECK_MENU_ITEM * <div role="note"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_COMMENT * <div role="region"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_PANEL? (not clear yet, Joanie knows more about this) * <div role="status"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_STATUSBAR * <div role="timer"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_TIMER * <div role="tooltip"> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_TOOL_TIP Some things to consider: * http://www.w3.org/TR/wai-aria-implementation/#mapping_role * http://lists.w3.org/Archives/Public/public-pfwg-comments/2013OctDec/0001.html [1] https://bugzilla.gnome.org/show_bug.cgi?id=720065
Attachments
Patch (11.34 KB, patch)
2014-11-22 15:58 PST, Joanmarie Diggs
no flags
Mario Sanchez Prada
Comment 1 2013-12-10 08:10:25 PST
Some more: * <section> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_SECTION * <math> shows up as ATK_ROLE_UNKNOWN, should be ATK_ROLE_MATH * <listbox> shows up as ATK_ROLE_LIST, should be ATK_ROLE_LIST_BOX
Mario Sanchez Prada
Comment 2 2013-12-10 11:36:54 PST
Also, the landmark roles: * <address> * <aside> * <header> * <nav> * <div role="banner"> * <div role="complementary"> * <div role="contentinfo"> * <div role="main"> * <div role="navigation"> * <div role="search"> All of them should be exposed as ATK_ROLE_LANDMARK, with the proper value for the xml-roles object attribute, according to http://www.w3.org/TR/wai-aria-implementation/#mapping_role
Radar WebKit Bug Importer
Comment 3 2013-12-20 11:36:13 PST
Joanmarie Diggs
Comment 4 2014-11-22 15:58:29 PST
Joanmarie Diggs
Comment 5 2014-11-23 13:29:22 PST
Comment on attachment 242125 [details] Patch Obsoleting and clearing the r? flag. Most of the issues reported in this bug were fixed in other bugs (see the depends on). So what is needed here is one line of code (for the remaining issue) and unskipping a number of skipped tests. We have another, similar bug (bug 125491) which was filed at the same time as this one and (now) boils down to the same thing: Unskip tests in roles-exposed.html. To make things simpler, I have since opened bug 139016 for unskipping tests in roles-exposed.html. Marking both bugs as a dup of it and will include the patch here in the patch I attach to 139016.
Joanmarie Diggs
Comment 6 2014-11-23 13:30:12 PST
*** This bug has been marked as a duplicate of bug 139016 ***
Note You need to log in before you can comment on or make changes to this bug.