Re: [g-a-devel] AT-SPI, focus leaving and window IDs
- From: Bill Haneman <Bill Haneman Sun COM>
- To: Samuel Thibault <samuel thibault ens-lyon org>
- Cc: gnome-accessibility-list gnome org
- Subject: Re: [g-a-devel] AT-SPI, focus leaving and window IDs
- Date: Fri, 04 Mar 2005 13:45:35 +0000
I'm going to backtrack a bit to Samuel's original post:
There are several things which should be added to AT-SPI to my mind:
I believe that all the information Samuel is suggesting and requesting
is already available in at-spi. I'll try to explain where...
- Focus leaving should be reported as well:
There are two aspects of 'focus' here - there is "widget focus", i.e.
which the individual widget emits, as "focus:" events. AtkObjects also
report changes in state, including "state-changed:focus" which changes
to FALSE when a widget loses keyboard focus. So the "loss of widget
focus" is already reported.
There is also the "active toplevel window", which is exposed through
"window:activate" and "window:deactivate" events. So when an accessible
window becomes inactive, at-spi does send notification of this fact (via
window:deactivate). So this information is already exposed by at-spi.
At the moment at-spi doesn't emit "window:activate" events for
"inaccessible" windows. This could be changed, with a bit of work, but
it would introduce a dependency on a particular window manager (ie.
at-spi would require metacity), and I don't think the added value for
users is worth the added dependency, as gnopernicus already speaks the
name of the 'inaccessible' application as you cycle through toplevel
windows with "Alt-TAB". Any other changes which you'd like to see, for
instance having gnopernicus announce that the currently active toplevel
is inaccessible, could be done in gnopernicus without any at-spi changes.
- It would also be useful to be able to get widgets' X-window ID to
better handle focus.
I don't see any useful thing that a screenreader on a _modern_ Xwindows
platform could do with this. It's no longer true that all widgets have
their own XIDs, X-window IDs are now only an internal implementation
detail and give very little information of value to outside observers.
The only exception to this is in the case of the at-spi "LoginHelper"
interface, which is used only by specialist applications such as screen
lock dialogs, password authenticators, and the like, and isn't listened
to by assistive technologies. Those highly-specialized applications
_do_ get involved with the XWindows window stack and window IDs in a few
cases, and one piece of LoginHelper API does report the XWindow ID of
one or more toplevel windows, but assistive technologies in general
should not have any need to get involved with the XServer's window stack
(furthermore, they are inviting trouble if they do).
regards
Bill
icrosystems Ireland
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]