Hi, I'm currently working on focus tracking algorythm for a zoom for compiz (the window manager), that I hope to be soon pushed upstream (ubuntu) and in debian, which would add to the a11y of desktops for visually impaired. The treatment of text objects in libatspi2 is rather efficient, however, with minor drawbacks for visual applications. One of which is caret management on limit cases. When caret is on a newline, it is quite hard to get the screen position of the newline caret, The function atspi_text_get_character_extents is of no help, and returns 0,0 as coordinates when such offset is provided. This makes it really hard to track for a zoom without consistent workarounds. Another similar problem is when a text is empty, thereby no text offset is present. The zoom area should then be on the caret, so one can see one can start typing. However, is it to my knowledge impossible to get a character extents, or a caret position/size of some kind. The workaround is to extrapolate the position of the beginning of the paragraph/text, which gives mediocre results. I know these behaviours are probably correct according to AT-SPI standard, but is it voluntary? Has this problem ever surfaced in other applications? Is it possible to change any of that in the future, without impairing the other applications relying on at-spi? Thanks for reading. -- Ksamak Free software hacktivist
Attachment:
pgpee8SbXBhrM.pgp
Description: PGP signature