Re: Linux Window Managers and Accessibility

>I (personally) am not familiar enough with the ICCCM WM spec to say, but 
>I find it hard to believe that one cannot come up with an unambiguous 
>token of some kind that is knowable by both application and WM.  However 
>I could use help in determining it :-)

OK, at last I have looked at the WM_SPEC properties in the extended 
window manager spec (

One of the reasons for the difficulty with the wm/SPI interactions is the fact that the 
SPI spec for AccessibleDesktop returns AccessibleApplications as its children.  This 
allows apps that do not actually map toplevel windows to be accessed, a key requirement.  
However it is at some variance with the way applications are normally mapped to desktops 
- since the mapping has to do with toplevel windows.  An accessible application might 
reasonably return, as the children of its "root accessible", its toplevel windows.  
However this creates a disconnect if we allow that an app which maps toplevel windows to 
two virtual desktops (DT1, DT2) then is a "child" of both AccessibleDesktops - for that 
fails to distinguish between these 2 cases:

(1) an app has 2 toplevel windows, one mapped to DT1 and one to DT2;
(2) an app has 2 toplevel windows, both of which are mapped to both DT1 and DT2.

The present API would return both toplevel windows' root accessibility implementations in 
both desktops, which is disjoint with the normal UI behavior.

This suggests that it might be preferable to return the toplevel windows' "root" 
accessibility implementations as the children of AccessibleDesktop, and move the 
application properties that are now in AccessibleApplication somewhere else in the API.  
It will take a little thought to decide how to reconcile this with the need to return 
root accessibility implementations for applications that do not map toplevel windows.  
However the use of toplevel windows as the usual type of AccessibleDesktop's children 
will simplify the work of mapping application "accessible" object to desktops, since the 
mapping of toplevel windows to desktops is straightforward and handled by the WM_DESKTOP 

We also have to consider the edge case of an application which is accessible from the 
outset, but which only maps a window well after it has started interacting with the 
accessibility framework.


Bill Haneman x19279
Gnome Accessibility / Batik SVG Toolkit
Sun Microsystems Ireland 

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]