Sina Bahram wrote:
I do find it rather unfortunate that the design of the application was not
done in such a way as to easily allow such a thing.
The application was originally designed and written before GTK+ *had*
any support for accesibility - it was originally written for GTK+ 1.0,
and then converted to support 1.0 and 1.2 (and then the 1.0 support was
removed), and then converted to support both 1.2 and 2.0.
So it's not as if the problem was...
But sometimes, proper
software engineering and getting a product out do conflict, especially when
this portion of your target audience is small.
...a lack of "proper software engineering" on our part, it was more a
lack of support for accessibility in GTK+ at the time Ethereal was
implemented. You could perhaps argue that GTK+ should have had
accessibility support designed in from the beginning, but that's another
issue of "getting everything right" vs. "getting something out the door"
- not all the features everybody might want will necessarily show up in
version 1.0 of a product.
It might be useful if somebody who had the time to audit the GUI code
and make the changes needed to support ATK - ideally in such a fashion
as to handle GTK+ 1.2 as well. This might involve doing more wrapping
of raw GTK+ APIs than we're doing now, and modifying existing wrappings
(GTK+'s APIs aren't always enough - there's no convenient way, at least
in GTK+ 1.2, to create a dialog box and *automatically* arrange that the
Esc key close it, the Enter key activate an "OK" button, etc., so we
have a bunch of wrappers for those things).
A likely candidate would be somebody who would use Ethereal, is familiar
with ATK, and needs assistive technology to use it; another candidate
might be somebody willing to be paid to work on it (I'm already paid to
work on software elsewhere, so I'm not available for that).