I am at Toronto this week with the rest of the mozilla accessibility and graphics teams to spend a week working all toghether.For the accessibility team, the most important goals of this week are Electrolysis and mobile.
I have been working the two first days in accessibility support for the Electrolysis branch of firefox under Linux. Electrolysis is the project to move firefox into a multiprocess application, where each tab content is rendered in a separate process. Our plan is to use AtkPlug/AtkSocket to plug the accessible elements belonging to each tab/content under the proper place in the accessible tree of the main firefox window.
Firefox already have AtkSocket support thanks to great work that Brad Taylor and Mike Gorse did to support accessibility in out-of-process browser plugins. So the steps to get everything working are:
- Get proper accessibility service running on the content processes (done)
- Being able to create full accessible trees for each document (done)
- Implement an AtkPlugAccessible wrapper (done)
- Create an AtkPlug for each document (done)
- Create an AtkSocket for each open tab
- Tell the chrome (main window) the id of every AtkPlug, so it can be connected on the proper AtkSocket
For the step 6, we will use IPDL to send the plug id to the chrome process, so it can be plugged on the proper place.