New in accessibility in Firefox 10

Firefox 10 has just been released. Here is a recap of the things that were fixed in accessibility for this release.

First and foremost, we managed to fix a whole range of bugs related to focus reporting. For more details, please read this post.

In Linux, the caret position is now correctly updated again when using atk_text_set_caret_offset is used.

Accessibility now supports the list attribute on inputs and the datalist element of HTML5. An indication is given that this input supports autocompletion and that it has a list. Pressing DownArrow will put you in a list of choices, enter will allow you to accept the selected item and put it in the entry.

Info about the map tag is now being reported correctly.

The feature to read highlighted text via the Mac OS X speech feature under the “Edit” menu has been fixed to work properly in Lion. This also applies to Thunderbird where this issue was first reported to us.

Telemetry has been updated to report the use of the iSimpleDOM interface by assistive technologies. It also now reports if depricated IAccessible2 methods are still being used by any AT out there. For more information on what telemetry is and how we use it, please read my post on this subject.

If a table has the datatable attribute’s value set to “0”, we now always treat it as a layout table and set the object attribute for the table accessible accordingly. The algorithm to determine whether something is a layout table has been enhanced so that it no longer picks up data table elements from nested tables.

We fixed a few issues having to do with accessibleRelation exposure for select elements that are nested inside labels, and with xul:tree elements and their children.

All in all, we almost reached the 50 fixed bugs mark in this cycle in the Accessibility APIs component alone. Congrats to the whole team and all external contributors who also helped with a number of these!

What’s new in Accessibility in Firefox 8.0

The newest update to Firefox has just been released to the public, and it’s that time again where we look at the user-facing and facing assistive technologies changes in this Firefox release. If not otherwise noted, these changes apply to Thunderbird as well, since it is built on the same platform.

First and foremost, the emphasis in this release was on performance and stability. We fixed a number of lingering crashes and inconsistencies on both Windows and Linux that may have impacted some users in Firefox 7. An example of this is inconsistent behavior when printing in Linux and using assistive technologies.

We fixed a bug that would sometimes cause iframe content not to be properly loaded into the virtual buffers of screen readers under Windows.

On Linux, access keys are now included in ATKAction information.

A state change event for elements having the “mixed” state (e. g. a tri-state checkbox) is now fired also for elements that aren’t in focus.

If you decide to opt into sending data to improve Firefox, we’ll be told if you have accessibility instanciated. This is most likely the case when you have a screen reader running, but may also be instanciated by some password entry assistants (like finger print scanners) or some anti-virus software, esp on Windows.

And once again the note that, due to a technical change introduced in Firefox 4.0, you have to make sure to load your screen reader before Firefox or Thunderbird, or virtual buffers may not work correctly. Also if you are one of those people running multiple screen readers, make sure to shut down Firefox and/or Thunderbird before shutting down one screen reader, and loading the other screen reader before restarting Firefox and/or Thunderbird. This is true for Firefox 4 onwards and also includes Firefox and Thunderbird 8.

Happy browsing!

What’s new in accessibility in Firefox 6

On Friday May 27, a bigger update was offered to everyone on the Aurora channel that brought them up to a revision 6 Firefox.

As this was a bigger update, it is time to also point out the new stuff to watch out for in accessibility. One thing I already blogged about is the HTML progress element, so I won’t cover that here. Some of the other things to be aware of are:

Seamless plugin accessibility integration on Linux

One feature that’s been baking in a bug forever, but which finally got its final push and made it into code is plugin accessibility for Firefox on the GNOME Desktop on Linux! There is only one plugin currently called Moonlight that actually uses this, but if other plugin authors want to, they can now plug into Firefox and expose their accessible content to Orca and other assistive technologies.

The Windows magnifier and the writing caret

There is a problem in Firefox 4 and 5 that will prevent Windows Magnifier and possibly other low-vision products from tracking the writing cursor properly when on the URL bar or in some other places. We were able to fix this in Firefox 6.

Improvements to the notification popup

The new notification popup that asks, for example, whether you want to save an entered password, has been improved a great deal. For one, it now announces itself to assistive technologies as an alert like the old notification bar did, which means that the text that the user is to be notified about is automatically being read by NVDA, JAWS and others. Secondly, we made the “Close this message” button tabbable again. One thing that we didn’t manage to solve in time is the inconsistency with the menu button that, when SPACE is being pressed on it, doesn’t actually do much, but you have to tab to a secondary regular button with the same label to get the actual function. We’re working on a solution to improve keyboard accessibility for these menu buttons in general, and the notification popups will benefit from this as we do.

ARIA support

In regards to WAI-ARIA, there are a number of changes/additions:

  • aria-sort now fires attributechange events when its value is being changed.
  • aria-selected is no longer being ignored for ARIA tabs.
  • aria-busy now properly fires statechange events.
  • ARIA documents children can now properly be queried via accChild API methods.


Other noteworthy fixes are:

  • The Untrusted Connection page is again accessible via the virtual cursor in screen readers.
  • When deleting text from edit fields, the wrong text was reported through at-spi. We fixed that problem.
  • We got rid of the bogus pref accessibility.disableenumvariant.
  • The About… dialog is more readable than it used to be.