Thanks Malte, I especially appreciated the comments about laziness. That's worth more than two EUR - maybe two beers :-)
Malte Timmermann wrote: > I agree with Jamie. > > An application shouldn't special case anything wrt it's accessibility > API implementation depending on such a "screen reader present" flag. > > It doesn't matter who is asking for the information for what ever reason. > > Someone asks for information, so he should get it. > > When we started to implement the accessibility API in OpenOffice.org, we > also thought that it would be helpful to figure out whether or not AT is > running - to avoid some expensive stuff. > > Nowadays I think the implementation shouldn't be so "expensive" when > objects are created on demand only. > > I don't know how the reality in OOo really looks like now, but in theory > it should be this way: > > - If nobody asks for the root accessible, is doesn't need to be created. > - If someone asks, create it - but only that one object > - When asked for children, create objects on demand > - If some object's state change, see if a corresponding accessible > object exists, otherwise don't create the information needed for > notifications. > > So in the end - if no one asks you to generate the tree, it's up to you > to do the time consuming and memory extensive stuff on demand only. > > That's only my theory of this - I guess it doesn't look so in OOo now, > but it probably could. > > The main reason that we still have an "enable AT support" option in OOo > on Windows is that we don't have MSAA/IA2 yet, and still use JAA. So in > case of AT support we fake to be a Java application, and only for that > reason we need to launch a JavaVM in startup, which is too time > consuming to do it for everybody. > > The "enable AT support" probably also is helpful for us on GNOME, > because our UAA/ATK bridge would probably result in creating the full > hierarchy and events even if no screen reader asks for information, > because the bridge would then be listener on all objects. > > But even that could probably be optimized, so the bridge could do this > also on demand only... > > One situation where I somewhat agree with Andres's argument "can involve > extra GUI": Some GUI actually might change, e.g. check boxes add the > text "(on/off)". But I don't think that it's helpful to change the GUI > in this way when a Screen Reader is present. > The screen reader will read the state anyway, so adding the text to the > GUI string might make it even more difficult, because the screen reader > needs to ignore it. So while I think such kind of GUI changes might be > reasonable for other situations/needs, a "screen reader present" flag is > not the best choice here. > > And if the application has some complex custom GUI, which needs to be > different for screen reader users, they should use some application or > system setting (like AT support), but not rely on whether on not a > screen reader is active. If the screen reader is started after the > application, that doesn't work anyway. And the complex GUI might also be > unusable to screen magnification or mouse/keyboard replacement users... > > So I think it's can be reasonable to have a flag for AT support on/off, > but then you shouldn't need an other one to determine if a screen reader > is running - which is only one of many possible AT anyway... > > Just my two cents (well, it's a large mail, so maybe 2 EUR), > Malte. > > James Teh wrote, On 05/26/10 00:01: > >> On 25/05/2010 11:46 PM, Andres Gonzalez wrote: >> >>> WM_GETOBJECT is NOT a reliable way of detecting AT either, since it may >>> be triggered by apps and even device drivers that don't have anything to >>> do with AT >>> >> If an app sends WM_GETOBJECT, it clearly wants accessible or native >> objects, otherwise it wouldn't send the message. Regardless of whether >> it is an AT, it is requesting the info for a reason. The accessibility >> hierarchy is not supposed to be specific to any particular type of AT; >> it should just expose objects according to the spec. >> >> Jamie >> >> > _______________________________________________ > Accessibility-ia2 mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 > > > -- *Pete Brunet* a11ysoft - Accessibility Architecture and Development (512) 238-6967 (work), (512) 689-4155 (cell) Skype: pete.brunet IM: ptbrunet (AOL, Google), [email protected] (MSN) http://www.a11ysoft.com/about/ Ionosphere: WS4G
_______________________________________________ Accessibility-ia2 mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
