Re: [Accessibility] Re: [Kde-accessibility] focus tracking

On 06/07/10 7:45 PM, Jason White wrote:
Joseph Scheuhammer<clown utoronto ca>  wrote:

>  In closing, here is something of a proposal:  the machinery that
>  Orca uses to track keyboard focus is not inherent to a screen
>  reader.  Other processes could well make use of Orca's focus
>  tracking machinery.  It would be very useful if these heuristics
>  could be carved out of Orca and published as a separate module,
>  library, or service that any process could make use of.
One of the difficulties here, I think, is that Orca sometimes controls the
focus; it doesn't simply monitor it. The leading example is in the Orca
scripts for Mozilla, where caret movement is controlled by the Python code in
Orca to work around limitations in Gecko.

I was noting (1) that various a11y processes want to track focus, and (2) that Will suggested that tracking focus would be reinventing the wheel since that's something that Orca already does. Taking that to the next step: instead of every a11y tool reinventing this particular wheel, create a generalized module that does it, using whatever Orca is doing as a guide. Then, everyone can use this general focus monitoring device, including Orca (if it so chooses).

I don't see why Orca sometimes setting focus raises difficulty for such an effort. It may well be desirable that the proposed independent focus monitoring device have the ability to set focus too, and it can copy that functionality from Orca as well. Is there something about setting focus that makes it difficult to track focus? Or is it that the way Orca tracks and sets focus is so entangled with the rest of Orca's code that those techniques can't be abstracted from Orca?

I don't actually know the mechanics of how Orca is doing focus tracking and setting -- I haven't looked at the code. I've just seen it work, and it seems to work well. Can you explain this difficulty?



'Clown control to Mao Tse Tung.'
 - D. Bowie (misheard lyric) -

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