NPAPI:NativeAccessibility: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 45: Line 45:


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.
''NOTE'': This approach should be extensible to other accessibility frameworks, e.g.: windowless Windows plugins or OS X Accessibility.


= Implementation Recommendations =
= Implementation Recommendations =
=== 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, implementors should create proxy objects that wrap methods on the plugin's accessible, and remote the calls over IPC.
Since accessibility objects are living objects, they cannot be simply serialized over an IPC between the plugin process and the browser process.  Instead, implementors should create proxy objects that wrap methods on the plugin's accessible, and remote the calls over IPC.
26

edits