Weekly update (December 2nd 2008)

The last few weeks have been rather busy for us due to work specific to  NV Access so we have got a little behind in weekly blog posts. However, in this post I will try and cover the significant happenings in NVDA from mid November up to now.

Firstly, I have finally implemented support for group position information for IAccessible2 objects (ticket #77). NVDA has always been able to report group position info e.g. "x of y" or "level z" on MSAA objects, but we had never gotten around to supporting it for IAccessible2. At the same time as implementing support for this, I slightly redesigned how NVDA handles position information in general. This does not really change anything for users, but does make it easier to manage these properties in the speech code.

Although Jamie has already mentioned this in another blog post, NVDA has now been updated to run with Python 2.6. There are some pretty interesting new features in Python 2.6, and we are quite glad that we can now start thinking about using them. NVDA no longer will run with Python 2.5, so if you do run from source, please make sure to read the updated dependencies.txt file.

When redesigning how NVDA handles position info, we decided to properly handle the announcement of levels in tree views much more genericly. This means that all tree views now will announce the level of the current item first if it changes, rather than this only happening for SysTreeView32 tree views.

Jamie has spent some time working on braille support, to make it much faster when moving the focus around the operating system and applications. Specifically he has implemented ticket #201, which allows NVDA to remember common objects in the ancestors of the new and old focus objects in a focus change. As this greatly cuts down the amount of information NVDA has to fetch in order to represent the objects in braille, there are some very noticeable speed improvements.

I made a few small improvements to NVDA's support for speaking typed words and characters. These include better improved speaking when both typed words and characters are on (now the word will be announced before the character that denoted its end, rather than after). NVDA no longer announces an asterisk when pressing non-alphaNumeric keys such as tab and enter, in a password field. And finally, NVDA no longer will speak a word you have typed if when typing the word you then move the focus to something like a menu or other application etc. Previously NVDA could unexpectantly start announcing a word you typed minutes ago just because you pressed space or enter.

Jamie has managed to fix a very long standing bug in NVDA's command console support that was stopping certain bits of new text from being announced. This had been reported to us quite a long time ago, and funnily enough, to fix it was as easy as removing one small line of code. This fix hopefully may make NVDA a little nicer to use with some console-based text adventure games.

As some people have been reporting crashes with Firefox when using NVDA, we have been racking our brains over what could be causing them. So far we havn't had too much luck, but along the way we did manage to find some issues with NVDA and unicode file paths. Jamie and Peter have made a few changes which *may* make NVDA better when its run from a directory with non-ascii characters, though we are not too sure really how many issues this really does fix.

If people do get crashes with Firefox when running NVDA, it is very important that they do send their crash reports to Mozilla via the Mozilla Crash Reporter if it does appear. And it is also helpfull if they could send the crash IDs to the NVDA developers, so we can research to see if NVDA caused the crash, and if so, how it caused the crash. If you wish to find IDs for crashes you have experienced in Firefox please type the url: about:crashes In to your Firefox location bar, and you will see a page with all the IDs listed.

Jamie has fixed some issues where reading virtual buffers with the review cursor would not seem to announce the same information for fields such as links etc as would be announced if you used the actual caret (with the arrow keys). The review cursor hopefully now acts exactly the same as the caret, at least as far as user experience goes.

Peter has added support for some edit controls in pinacle tv software.

For a while now, it has been clear that there should be a way to copy text from NVDA's review cursor. A situation that needs this feature would be perhaps in a Dos console where you need to copy a URL. Sighted users can just highlight the text with the mouse and then copy it. Because of this, Jamie has added two new scripts to NVDA. nvda+f9 marks the current position of the review cursor, and nvda+f10 copies the text from the previously marked position up to the new current position of the review cursor. Finally, There are a lot of applications which like to let NVDA know that the focus has changed, even when they are not the currently active application. This is annoying as NVDA then announces the focus change to the user, but when the user then acts upon the change, they find that the focus never really actually changed. Jamie has fixed this problem by making sure that NVDA does not handle focus changes outside the active application, or in a system control (such as the start menu etc).

Finally, we have been making some changes to do with whether actual Python source code is included in our compiled snapshots and releases. This is to try and get around the issue where a person or organisation wishes to Use NVDA, but can't deal with the GNU General Public License (GPL). This may have caused some problems for users using snapshots. If you find you can no longer run NVDA after installing a new snapshot, please uninstall any old copies of NVDA, including the newly installed one, also delete the NVDA directory from the Program files directory or where ever you installed it if it still exists, and then re-install NVDA again. We aim to make this transition a little easier for users in the near future.

Comments

1. jajoehl -- 2008-12-05 22:47

I have now installed the latest and greatest version of Firefox, and am trying it out with NVDA. I love what you guys have done! I now have Firefox as my default browser, but I currently still use Internet Explorer for a few things. It's true what they say, NVDA just keeps getting better and better.