XBoard Enhancement and Accessibility

XBoard Enhancement and Accessibility

In order to make the change in orca screen reader, I started discussion in orca development list regarding this. As a result, Joanmarie one of the core developer of orca replayed me to open a bug in GNOME's bugzilla describing the issue. at the same time burt henry, Krishnakant Mane and Storm Dragon where testing my orca patch and succeeded in playing with orca. But after filing the bug https://bugzilla.gnome.org/show_bug.cgi?id=752211 she replied that accessible description is provides additional details about a widget and it should not be used for notifying.

XBoard Accessibility

The version that use TTS to announce the information is being tested by my visually impaired friends. As you know, using TTS is not a good method, so I just created a solution by setting accessible description, so that screen reader can say it. Unfortunately this demands a minor change in orca screen reader code also(scripts/default.py). The patch is attached with this mail. Maybe we have to provide a check box option in orca to enable this. As per mentors instruction, I started discussion in orca development list regarding this.

XBoard Accessibility

XBoard Enhancement and Accessibility

Finally I just committed the KeyNavigation patch to branch named "gtk3".

http://git.savannah.gnu.org/cgit/xboard.git/commit/?h=gtk3&id=200fb1b09fa0eb68d877f0f58cf89c876dc43d05

Now we have a menu named "Accessibility" which contains functions to announce information about the board.

Currently we use espeak to announce these information instead of passing to orca screen reader. Yes we do this to start testing in parallel.

XBoard Enhancement and Accessibility

Just updated the KeyNavigation patch. Now this patch will include key and related functions for getting information about the current board and it's time to create a way to Screen Reader.

XBoard Enhancement and Accessibility

Today I was going through AT-SPI/ATK interfaces,the implementation of GAIL and ORCA Screen Reader. I am seeking a way to pass the information about the Chess board such as BlackPieces, LowerDiagnols, PossibleAttackMove, WhosTurn etc to ORCA Screen Reader. I am really happy to see the importance given to accessibility by GNOME and GTK Team.

XBoard Enhancement and Accessibility

Finally my document reached FSF and my assignment/disclaimer process with the FSF completed. Also Arun Persaud added me to XBoard savannah page as a contributor. With this pemission i just created a new gtk3 branch and commit a inertial push. http://git.savannah.gnu.org/cgit/xboard.git/commit/?h=gtk3

A draft KeyNavigation patch is created which is being reviewed by the mentors. This patch also make the gtk label to use ellipsis(...) in order to avoid window re-sizing. I am reading the LeftClick again and again to make it readable by commenting or by refactoring.

At the same time I am trying to pass the current-selected-piece message from XBoard to screen reader. Then we will implement other events such as SayBlackPieces, SayLowerDiagnols,SayPossibleAttackMove, SayWhosTurn etc.

XBoard Enhancement and Accessibility

Porting is over! XBoard works cool with GTK3. The patch is attached with this blog entry. Currently I am making XBoard accessible for visually impaired. As a first step I am trying to make keyboard navigation possible so that one can play XBoard in a mouse-free manner. The idea is one can select the move-from piece via navigating using arrow keys. The the selected square will be highlighted with a color. The player can set the lock using enter key and again navigate to the move-to position and make the finish move using same enter key. I just created a key_navigation function inside backend.c which uses static variable to store the current cursor position. this function is connected to key-press-event of graph via GraphEventProc -> Exp -> KeyNavigation. The arrow key-press events are blocked from doing further action in order to keep the keyboard focus inside the graph. At present i am looking through Winboard accessibility implementation, the very complex LeftClick(backend.c) and related functions.

XBoard Enhancement and Accessibility

Weak 1 : The first decision was about porting Xboard Gtk version to Gtk3 then to windows also. But we dropped the plan to make Gtk version for windows because winboard(the windows port of xboard) is using native windows API which is more better and have no dependency than the new Gtk version.

Also decided to make a gtk3 port because most of the popular gnu/linux operating systems come with gtk3 as default including Debian,Ubuntu, Readhat, Fedora. Also accessibility is far better in Gtk3. as a direct result orca screen reader has better accessibility in Gtk3.

At present the porting is almost complete. We are continuing the development by creating and updating the patches instead of git branch. This is because of the savannah need physical hard copy of signed copyright agreement of mine(which is already sent) to push the code.

XBoard Enhancement and Accessibility

First of all me and my papa(visually impaired) would like to express our gratitude to Portland State University for accepting this project. XBoard is a graphical user interface for chess engines, and we are going to make it accessible for visually impaired persons through this project. I am doing this project with two official and two voluntary mentors listed below.

1 - Harm Geert Muller(Dutch) - HGM is a chess engine developer and from XBoard Team

2 - Samuel Thibault(France) - is a assistant professor and have a great role in Debian Accessibility.

3 - Arun Persaud(India) - One of the XBoard Developer

4 - Sathyan(India) - My great papa who is visually impaired and working as a teacher in Govt School for the blind kasaragod. This is our forth accessibility project.

I don't know how we become connected and it's really a wonder for me and my papa because once again we are going to realize our dream.

Syndicate content