Last Comment Bug 752125 - [AccessFu] Switch to a role-based traversal rule
: [AccessFu] Switch to a role-based traversal rule
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Disability Access APIs (show other bugs)
: Trunk
: ARM Android
-- normal (vote)
: mozilla15
Assigned To: Eitan Isaacson [:eeejay]
:
: alexander :surkov
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-04 18:29 PDT by Eitan Isaacson [:eeejay]
Modified: 2012-05-07 18:13 PDT (History)
2 users (show)
ryanvm: in‑testsuite-
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
Switch to a role-based traversal rule. (4.18 KB, patch)
2012-05-04 18:39 PDT, Eitan Isaacson [:eeejay]
dbolter: review+
Details | Diff | Splinter Review

Description User image Eitan Isaacson [:eeejay] 2012-05-04 18:29:38 PDT
For simplicitly, I originally implemented a traversal rule that lands on all leaves and reads their unique lineage. This has ended up being problematic. For example dijit widgets don't have an action assigned to the text leaf at the tip of a widget.

TinyMCE's toolbar has empty paragraphs at the tip of its buttons, using aria-labelledby instead.

So to be more agnostic as to how a widget is implemented, be it native or aria, we should probably switch over to a role traversal rule. And if needed, have more logic for specific roles in the match function.
Comment 1 User image Eitan Isaacson [:eeejay] 2012-05-04 18:39:09 PDT
Created attachment 621232 [details] [diff] [review]
Switch to a role-based traversal rule.
Comment 2 User image David Bolter [:davidb] 2012-05-05 06:11:51 PDT
I want to go over some high level stuff with you before review (probably Monday).
Comment 3 User image David Bolter [:davidb] 2012-05-07 10:13:28 PDT
Comment on attachment 621232 [details] [diff] [review]
Switch to a role-based traversal rule.

Review of attachment 621232 [details] [diff] [review]:
-----------------------------------------------------------------

ok r=me

::: accessible/src/jsat/VirtualCursorController.jsm
@@ +120,5 @@
>  
>      preFilter: Ci.nsIAccessibleTraversalRule.PREFILTER_DEFUNCT |
>        Ci.nsIAccessibleTraversalRule.PREFILTER_INVISIBLE,
>  
>      match: function(aAccessible) {

tempting to do let rule=Ci.nsIAccessibleRole and case rule.ROLE_FOO
Comment 4 User image David Bolter [:davidb] 2012-05-07 10:16:27 PDT
Actually we could consider consts like we do in our mochitests.
Comment 5 User image Eitan Isaacson [:eeejay] 2012-05-07 11:25:38 PDT
(In reply to David Bolter [:davidb] from comment #4)
> Actually we could consider consts like we do in our mochitests.

Yeah, this is a bigger problem in this module, event consts too. Need to open a bug for that.
Comment 6 User image Eitan Isaacson [:eeejay] 2012-05-07 11:26:11 PDT
http://hg.mozilla.org/integration/mozilla-inbound/rev/b31f41a3fffa
Comment 7 User image Ryan VanderMeulen [:RyanVM] 2012-05-07 18:13:24 PDT
http://hg.mozilla.org/mozilla-central/rev/b31f41a3fffa

Note You need to log in before you can comment on or make changes to this bug.