snip
Well, maybe it would be best to start with the basics: how do you (or
in general, how do blind people) expect it to work? Say, you
downloaded this program (which doesn't need to be Rockbox Utility) and
started it. You don't know the program, so how do you figure how to
use it? Are you moving around with the mouse, trying to hover all
buttons and stuff to get them read? Do you use the Tab key to go
through all items you can select and expect them to be voiced? Do you
use the Alt button to activate the menu and go through that with the
arrow keys? Or something completely different?
All your questions sound quite sensible, and I can fully appreciate you
don't know how we do things. So to try and answer your questions.
Blind people generally prefer a gui interface, as the majority of us use
windows, and find it a lot easier to just select buttons in dialogues or go
through menus rather than type into a command line which is a lot more
fiddly and time consuming.
The majority of us use the keyboard, because its a lot easier to do things
than mess around with a mouse, though screen readers such as window eyes do
have a feature where you can move your mouse and it will try to speak things
as you move over them. But as I said most people prefer the keyboard.
Generally when I start out with a new program the first thing I do is read
its documentation to get an idea of how it all works, that way I have a
basic understanding of the interface and know if I am going to be dealing
with menus or tabs or in a lot of cases both.
If I am navigating an interface with tabs I will be using tab to move
between the various elements on a given page, and then if there is another
tab I want to go to I will either hold down control and press tab, or if I
am right on the part that will change the tab I will press right arrow.
Either way when I press whatever keystroke I decide to change tabs with I
will then expect jaws to announce the title of the new tab that I have just
moved to. Its obviously quite important that titles of controls and tabs are
announced as after a time I will know my way around the interface and be
able to think where things are in relation to each other. If titles of
controls and tabs are not announced, but we are just told that something is
a button or a tab, then basically the application is inaccessible, as we
won't have a clue what's what and what happens if we select a given button.
We tend to activate buttons in dialogues or on tabs with enter or spacebar.
Speaking for myself at this point I am sure people have other oppinions, but
I don't tend to have a visual idea in my mind of what a given program is
like, I usually have an idea after exploring the layout of the interface.
To answer your question about the menus, I activate them with the alt key, I
then expect to be able to move right or left along a menu bar, and then to
be able to use the down arrow to open a given menu which will obviously
contain items and maybe other sub menus.
I guess the first start for me giving input is to do an accessibility
comparison between jaws and nvda to examine the accessibility diferences.
Yes, that would definitely be a good thing. Also, you should make sure
to test with the latest version of Rockbox Utility, as there have been
issues in Qt itself in the past. Generally speaking, newer versions of
Rockbox Utility use newer versions of Qt, thus newer versions of
Rockbox Utility should always be better from the accessibility point
of view. I wouldn't be surprised if some issues are still around in
Qt, but I definitely know that accessibility of Qt itself improved,
which directly affects Rockbox Utility.
I pulled down the compiled executable from the rockbox site. Is that the
latest version I assume the utility is also built on a daily basis.
Also, what exactly do you mean when you ask how a blind user sees the
interface, the question is kind of broad. Are you asking how we navigate
the
user interfaces of applications?
Yes, like this. My naive view on this topic is that I as sighted user
have a visual impression of the application, so you need to have an
impression of the application as well. For example, I consider the
menu as a tree-like view: you have one top-level node "File" with the
childs "Install Rockbox Utility on player", "Configure" and "Exit".
Then there is another top-level node "Actions" with other childs. On
the other hand, as sighted user I'm more driven by the visual
appearance -- i.e. the buttons and tabs in the main interface rather
than the menu. What impression does a blind user have? Is it more
menu-centric? Are the tabs considered to have some specific structure?
Generally speaking for myself I consider all programs being different, so I
don't expect things to be in a particular order, and I am equally happy
dealing with menus or tabs. From a layout point of view, I think the
interface is fine, it just needs accessibility fixing, which I am happy to
work with you to do.
To me, the tabs group functions, but do they work that way if you're
using a screen reader?
A screen reader will do its best to read information in the order it appears
in on the screen, though for some reason jaws is not able to read a lot of
elements that nvda is able to pick up, even if it doesn't read them
propperly.
So by that, do you mean if a button or dialog is not read, you need me to
explain what is going on when I say that it isn't read propperly? from
examining the rb utility interface, the main problem at least when
running
jaws seems to be the names of controls and tabs are not read. So for
example, jaws gives indications about the type of control we are on but
will
not read the name linked to that control. It states that controls are
buttons or tabs but that is it.
How are you accessing the buttons / tabs? Are you using the tab key to
navigate or the mouse? I've seen differences in the past with NVDA, so
I won't be surprised if there are differences using Jaws as well.
I don't tend to use nvda much, over all jaws is better, but NVDA is good for
a free application.
My next step is going to be to compare what NVDA and jaws are able to read
and not read, I will then try to give you a detailed list of elements that
can be read and that can't be, as well as if jaws, NVDA or both can read
them.
I plan to try to get this done shortly.
I hope I was able to answer your questions, if not please feel free to write
back with follow up ones, or if I didn't explain something clearly enough
please ask for clarification.