Community
Participate
Working Groups
Build 20011204 While using Jaws (v3.7) in a java editor, it occasionally gets into a state where it misreads lines. It seems to get thrown off when things like tooltips or code assist windows are popped up in front of it. Even after they are closed, it seems to have corrupted Jaws' picture of the screen. Not sure whether the problem is in StyledText, Jaws, the Java editor or elsewhere. I don't have a reproducible case, but it occurs fairly frequently if you're trying to actually use the environment with Jaws running.
If the screen isn't actually corrupted, then I believe we are doing what we are supposed to. If Jaws isn't reading it properly, then it's a Jaws problem. Is the workaround just to turn off code assist, or does it get confused when tooltips from other widgets cover the area as well?
Unclear. I don't have a reproducible case yet. At one point it seemed different coverings were causing it: tooltip from ruler bar (part of the editor), code assist, Javadoc hover. Not sure about non-editor widgets. I'll try to narrow it down.
JAWS reads different items depending on the widget. In tool bars it reads the tool tip - in lists it reads the nearest label. In JAWS 4.0 there were a lot of improvments made and the SWT widgets are now consistent with the OS.
The original problem was not verified by the above. To reproduce this, you need to do something like: - close all editors - open a new Java editor - read some of the text and verify that it reads OK - use code assist or info tooltip over the text and dismiss it - have Jaws read the lines which were covered by the tooltip - it's garbled But it wasn't always consistent in reproducing the problem this way.
Note: This may be a side-effect of the double-buffered painting used by StyledText. Given how complex the guess is that it has to make to be able to read this at all, it may just not be something we can fix. Is a viable workaround to disable code assist/tooltips?
Yes, that's a viable workaround. I don't think those features would be as helpful for a blind user anyway. It's certainly very confusing to have auto- code-assist popping up for you all the time. The problem is almost certainly due to double buffering. Note that this is with Jaws 3.7. With Jaws 4.0, it's completely messed up (see other PR). We should look at how double-buffering is being done. It may be better if we copy a whole row rather than part thereof (I haven't looked at how we actually do it).
StyledText does paint an entire row at a time. It has to in order to get, for example, bidi ligatures correct.
Does the simple case of covering/uncovering the StyledText widget with another widget also get garbled? It may have more to do with the way code assist is implemented vs. the double buffering.
I can't reproduce the problem at the moment. When I see it next, I will try this.
Can't replicate.