accessibility: Inaccessible labels in "Xenakios/SWS: Command parameters" dialog #696
Breeder
commented
Feb 6, 2015
I'll change tab order for those control for the next pre build and you let us know if it helped when it's out :)
Just to clarify, I'm not talking about the tab order; the static text
labels shouldn't be in the tab order (they aren't right now). Rather,
I'm referring to the order in which the controls are created. So, right
now, in sws_extension.rc, we have:
EDITTEXT IDC_IVOL_NUDGE,295,100,30,14,ES_AUTOHSCROLL
EDITTEXT IDC_TVOL_NUDGE,295,120,30,14,ES_AUTOHSCROLL
EDITTEXT IDC_EDITPIXAM,295,139,30,14,ES_AUTOHSCROLL
... Lots of other stuff ...
LTEXT "Track volume nudge",IDC_TKVOLNUDLAB,224,122,66,8
I'm suggesting it should go like this:
... Other stuff ...
EDITTEXT IDC_IVOL_NUDGE,295,100,30,14,ES_AUTOHSCROLL
LTEXT "Track volume nudge",IDC_TKVOLNUDLAB,224,122,66,8
EDITTEXT IDC_TVOL_NUDGE,295,120,30,14,ES_AUTOHSCROLL
jcsteh
commented
Feb 7, 2015
Never mind. Just saw your commit; that should do the trick. Thanks and sorry for the unnecessary comment. :)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The labels in the dialog that appears when you activate the "Xenakios/SWS: Command parameters" dialog aren't exposed via accessibility APIs and are thus inaccessible to users of some screen readers. It's possible to work around this using screen reader review techniques or application specific code, so this isn't a major obstacle, but it'd be fantastic if it could be fixed in SWS.
At present, the static text controls for the labels are all created after all of the controls themselves are created. I'm pretty sure that if you create the static text control just before the actual control it's meant to label (i.e. in creation order, you'll have label, control, label, control, etc.), you should get the labels exposed via accessibility APIs "for free".
If this isn't feasible, there are other alternatives such as MSAA direct annotation, but they require some accessibility-specific code.