New AtkText scrolling-related API needs better documentation
Recently AtkText got new scrolling API by which an AT can request an application scroll a particular substring to a particular region (e.g. top edge) or point (x, y coordinates). However, the API in question doesn't have sufficient documentation. What I find especially confusing is what is expected to occur with respect to the start and end offsets.
Given a start offset of 0 and an end offset of 100:
- If scrolling to the point x,y, which should the implementor attempt to get closest to x,y? Offset 0 or offset 100?
- If scrolling to the bottom edge, which should the implementor ensure is at the bottom edge? Offset 0 (even though offset 100 might be off screen) or offset 100?
- (Insert your variant of the above two items here)
As the Orca maintainer, specifying both offsets strikes me as confusing and having the potential for interoperability problems. I would have thought that a single offset would be all that gets passed in. It would be my/Orca's job to say "scroll this single offset to this specific location." And then I would expect to get that. Right now, as the Orca developer, I don't know what to expect. And as a contributor/implementor in web engines, I'm not sure what to do.