At one point, IBM was developing a Java screen reader, which I think worked as a self-voicing plug-in. IBM was in a good position to do it right. Does anyone know why that project was dropped?
I think Jay has developed enough Java screen reading code that it could be a strong basis of a cross-platform Java screen reader. I wish other Java experts could work with him to get that released. I do not know what his current views are on doing something like that.
Jamal On 6/12/2010 7:45 PM, Ken Perry wrote:
It is sad but the truth is the only way we are going to truly get universal access to Java is if someone sits down and writes a java screen reader / tool kit that makes the entire system talk. This would be cross platform and injected into the Jvm like the access bridge. Otherwise we end up writing scripts for jaws, Plug ins for window - eyes, other methods for other screen readers and we are all working on multiple methods. If we all worked on one method it would be done in a year to the point of at least something like voice over. ken -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Jamal Mazrui Sent: Saturday, June 12, 2010 2:45 PM To: program-l@xxxxxxxxxxxxx Cc: programmingblind@xxxxxxxxxxxxx; Roopakshi Pathania Subject: Re: [program-l] Re: Developing cross-platform, accessible apps Correction -- Window-Eyes does not have native support for the Java access API, but considerable support has been developed by a third-party script writer. A significant problem, however, is that there is little tech support for that script at this time. Jamal On 6/12/2010 2:24 PM, Jamal Mazrui wrote:Hi Roopakshi, I am aware of the Java access API, but unfortunately, I do not think there is sufficient screen reader support for it on Windows. This is more the fault of the screen reader companies than Sun, since the API is strong on the server side. Window-Eyes, for example, does not support that API at all. JAWS works partially. I hear that NVDA works well. I do not know about System Access or Hal. With the SWT approach, on the other hand, apps can be fully accessible because native widgets are used, including MSAA-integrated controls on Windows. Thanks for the info about Axtk, which I had not heard about. At first, I thought the name was associated with the cross-platform GUI library called TK, which has poor accessibility, but I see that it is actually wx-related, as you say. Jamal On 6/12/2010 11:53 AM, Roopakshi Pathania wrote: > > Hi Jamal, > Thanks for the info about Axtk -- I had not heard of it. The name made me first think it was related to the cross-platform GUI library called TK, which has poor accessibility, but I see that it is based on wxWdigets, as you say. Jamal On 6/12/2010 11:53 AM, Roopakshi Pathania wrote:Hi Jamal, You left out Java Accessibility API that provides access to Swing based applications on all platforms (not completely sure about Mac) through Java Access Bridge. In this regard, the guidelines laid down by IBM on developing a completely accessible Java application are quite useful. http://www-03.ibm.com/able/guidelines/software/accesssoftware.html I like to point the developers of inaccessible applications to this page. One more toolkit might be of interest: AxTk. http://code.google.com/p/axtk/ It is built on wxWidgets and is especially geared towards screen reader users. It is also suppose to have text to speech wrapper class supporting a number of speech engines. I’m building my own tools for financial and data analysis, so have looked at cross-platform accessible libraries. Regards Roopakshi --- On Sat, 6/12/10, Jamal Mazrui<empower@xxxxxxxxx> wrote:From: Jamal Mazrui<empower@xxxxxxxxx> Subject: Developing cross-platform, accessible apps To: "programmingblind"<programmingblind@xxxxxxxxxxxxx>, program-l@xxxxxxxxxxxxx Date: Saturday, June 12, 2010, 8:27 PM This is to share some points I have learned about developing cross-platform, GUI-accessible, desktop apps. Currently, the key is using programming libraries that wrap native widgets of the platform. These native widgets generally implement the main accessibility API of the platform, much more so than custom widgets. On Windows, native widgets are most likely to implement Microsoft Active Accessibility, or increasingly, User Interface Automation as it replaces MSAA. On Linux, the GTK+ widgets that are native to the Gnome desktop implement the Assistive Technology Service Provider Interface. On the Mac, Cocoa-based widgets implement the Mac Accessibility Protocol. Thus, a cross-platform library is most likely to create accessible GUIs if it wraps native widgets of each platform, rather than defining its own widgets. A disadvantage of this approach is that the developer needs to be conscious of small differences in the behavior of widgets across platforms, even though wrapping code of the library tries to minimize such differences. Besides accessibility, an advantage of this approach is that widgets have the look and feel that sighted users are accustomed to experiencing on each platform. Sometimes, a GUI library is closely associated with a programming language that has especially strong support for that library in wrapper functions and design tools. A few language and library combinations that seem to work particularly well for cross-platform, accessible development are as follows: * Java and the Standard Widget Toolkit http://www.eclipse.org/swt/ * Python and wxWidgets http://wxPython.org * C# and the System.Windows.Forms classes of the Mono Framework http://mono-project.org Note that, in this case, the Microsoft .NET Framework should be used as the runtime environment on Windows in order to have native widget support. http://msdn.microsoft.com/en-us/netframework/default.aspx If others have further info or ideas on this topic, please share. Jamal __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind__________ View the list's information and change your settings at //www.freelists.org/list/programmingblind** To leave the list, click on the immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe] ** If this link doesn't work then send a message to: ** program-l-request@xxxxxxxxxxxxx ** and in the Subject line type ** unsubscribe ** For other list commands such as vacation mode, click on the ** immediately-following link:- ** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq] ** or send a message, to ** program-l-request@xxxxxxxxxxxxx with the Subject:- faq__________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind
__________View the list's information and change your settings at //www.freelists.org/list/programmingblind