26
edits
BradTaylor (talk | contribs) No edit summary |
BradTaylor (talk | contribs) |
||
| Line 50: | Line 50: | ||
This accessible does not need to be updated, so the browser may cache the object for the life of the plugin. Plugins that need to regularly remove and re-add their root accessible object should return a container-type object from <tt>NPN_GetValue</tt> and make their root accessible a child of the container. | This accessible does not need to be updated, so the browser may cache the object for the life of the plugin. Plugins that need to regularly remove and re-add their root accessible object should return a container-type object from <tt>NPN_GetValue</tt> and make their root accessible a child of the container. | ||
==== Out of Process Plugins === | ==== Out of Process Plugins ==== | ||
Since accessibility objects are living objects, they cannot be simply serialized over an IPC between the plugin process and the browser process. Instead, we utilize the AT-SPI registry to coalesce accessibiles from the two processes. The two corresponding objects involved in this process using ATK are <tt>AtkPlug</tt> and <tt>AtkSocket</tt>. Together, they are used to connect accessibility hierarchies from two different processes in a manner that is transparent to ATs. | Since accessibility objects are living objects, they cannot be simply serialized over an IPC between the plugin process and the browser process. Instead, we utilize the AT-SPI registry to coalesce accessibiles from the two processes. The two corresponding objects involved in this process using ATK are <tt>AtkPlug</tt> and <tt>AtkSocket</tt>. Together, they are used to connect accessibility hierarchies from two different processes in a manner that is transparent to ATs. | ||
edits