Orion's tabs don't play nicely with the Accessibility API
- Edited
Vlad:
Based on the latest beta (0.99.109.1-beta (Webkit 613.1.12), you are very close to having full tab support in Accessibility (and hence, in Witch).Update: The following only applies to top tabs; side tabs appear to be in their older, non-supported state.
Peter took a look, and here's what he had to say:
For the tab AXRadioButtons, they specify the tabs' zero-based positions in the tab bar as their respective AXValues (first tab: 0; second tab: 1; third tab: 2; etc.). This is incorrect. The AXValues should be binary (they're radio buttons, after all), and they should have the following values:
- active tab: true/1 - any other tab: false/0
This trips up Witch, because it looks for a value of true/1 to find the active tab: With the incorrect zero-based index values Orion currently specifies, Witch always considers the second tab (i.e., the one with the 1 value) active.
So the only required change Orion such that the tab AXRadioButtons' AXValues are either 1 (active tab only) or 0 (any other tab). This won't just "fix" Witch, it's also an accessibility win in general, because again, tabs are AXRadioButtons.
Thanks again for taking this on; not only will you make Witch users happy, you'll make anyone who uses Accessibility features extremely happy.
-rob.
Excellent news; looking forward to testing the update!
-rob.
Confirmed working with horizontal tabs—thanks! (It'd be amazing to have it working with side tabs, but I have no idea what that would require on your end, and I'm fine with telling Witch users that if they want tab support for Orion, they have to use "traditional" top tabs, so I consider this one 100% solved—thanks for the efforts!
-rob.
Did you change something in the latest beta? They're working now (though oddly, not for this page, the issue tracker). As for the technical, it's the same as the normal horizontal tabs—you'd just need to supply the same Accessibility data for vertical tabs ... but as noted, it seems they're working.
-rob.