Reader/Acrobat also expose off-screen objects. Below I pasted what we added in 
Acrobat 9 to the IPDDom API to address some of the needs of screen magnifiers 
concerning this. This is part of IPDDom idl downloadable from:

http://www.adobe.com/devnet/acrobat/interapplication_communication.html 

Acrobat_Accessibility_9.1.zip (ZIP, 43k)

/** IPDDom option IDs.
*/
typedef enum
{
        IPDDOM_OPT_CLIPPEDLOCATION = 1, /*< The screen coordinates retrieved by 
                                                                                
                                                        IPDDomNode::GetLocation 
may be clipped to the container window. 
                                                                                
                                                        The corresponding value 
VARIANT should be of type VT_BOOL. The 
                                                                                
                                                        default value is true.
                                                                                
                                                        */
        IPDDOM_OPT_RELATIVELOCATION = 2 /*< The screen coordinates retrieved by 
                                                                                
                                                        IPDDomNode::GetLocation 
may be relative to the top left corner 
                                                                                
                                                        of the container 
window. 
                                                                                
                                                        The corresponding value 
VARIANT should be of type VT_BOOL. The 
                                                                                
                                                        default value is false.
                                                                                
                                                        */
} IPDDomOptIds;

/** The IPDDomGlobalOptions interface allows a client to set and retrieve 
options that 
        affect the behavior of several other IPDDom methods. For the meainig of 
a specific 
        option, see the definition of its corresponding ID.
        For example, to retrieve the unclipped screen coordinates of an 
IPDDomNode 
        object, and relative to the top-left corner of the containing window,  
you can do:
        <code>
                CComQIPtr<IPDDomGlobalOptions> opts(pddn);
                if (opts)
                {
                        VARIANT v;
                        v.vt = VT_BOOL;
                        v.boolVal = false;
                        opts->SetOption(IPDDOM_OPT_CLIPPEDLOCATION,v);
                        v.boolVal = true;
                        opts->SetOption(IPDDOM_OPT_RELATIVELOCATION,v);
                        pddn->GetLocation(...);
                }
        </code>
*/
[
        object,
        uuid(C37B1794-B61E-402b-9C7C-B073DE579AC1),
        dual,
        helpstring("IPDDom Global Options Interface"),
        pointer_default(unique)
]
interface IPDDomGlobalOptions : IUnknown
{
        [id(1), helpstring("method GetOption")] HRESULT GetOption(
                [in] IPDDomOptIds optId,[out, retval] VARIANT* value);
        [id(2), helpstring("method SetOption")] HRESULT SetOption(
                [in] IPDDomOptIds optId,[in] VARIANT value);
};

Best regards,

--Andres.
 
 

> -----Original Message-----
> From: [email protected] 
> [mailto:[email protected]] 
> On Behalf Of Alexander Surkov
> Sent: Friday, May 14, 2010 11:36 PM
> To: Richard Schwerdtfeger
> Cc: [email protected]; 
> [email protected]; Shawn Warren
> Subject: Re: [Accessibility-ia2] exposing content that is not visible
> 
> Hi, Rich.
> 
> Clipped and scrolled off elements operable, for example, keyboard
> shortcuts works. So I would say they should be accessible, expose
> offscreen state, attached to accessible tree and as consequence no new
> API is needed. At least this is how it works in Firefox.
> 
> Thank you.
> Alex.
> 
> 
> On Sat, May 15, 2010 at 6:47 AM, Richard Schwerdtfeger
> <[email protected]> wrote:
> > I was speaking with Shawn Warren of AI Squared and he 
> indicated that he
> > would like to have IA2 be able to hid access to content 
> that is not visible.
> > In particular it appears Shawn was referring to content and 
> componentry that
> > was clipped out due to window size and other windows 
> obscuring the content.
> >
> > I was thinking about this and perhaps the right way to do 
> this would be have
> > an API feature that would turn on clipping for at least 
> documents. What do
> > others think?
> >
> >
> > Rich Schwerdtfeger
> > CTO Accessibility Software Group
> >
> > _______________________________________________
> > Accessibility-ia2 mailing list
> > [email protected]
> > 
> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
> >
> >
> _______________________________________________
> Accessibility-ia2 mailing list
> [email protected]
> https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
> 
_______________________________________________
Accessibility-ia2 mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2

Reply via email to