OK, I've tried a couple of my suggestions in a previous message and
I am concluding the bug is in java swing or the java access stuff.
Here is what I have tried:
* I tried running the scala example on Mac and while voiceover is
slightly better there are still times I can get it to report the old
label text.
* I wrote a pure java version, the bug is still present.
As I mentioned in a previous message, orca is getting no events
according to my debug file.
Now where do I take this? Whose software needs fixing? My gut
feeling is that it may actually be a problem in swing as I have
observed it on Mac as well (question: Might JLabel not be sending
any accessible events for a change of its text?).
Also, I cannot remember, but I have now tried it on openJDK as well
and the bug is still present.
Michael Whapples
On 13/03/11 19:07, Peter Korn wrote:
Hi Michael,
I've not played with scala. It would be interesting to explore
your app with some of the Java Accessibility Utilities -
particularly AccessibilityMonitor that is part of the Java
Accessibility Utilities ('jaccess-examples.jar'). See http://download.oracle.com/docs/cd/E17802_01/j2se/javase/technologies/accessibility/docs/jaccess-1.3/doc/AccessibilityMonitor.html
for details.
My hunch is that something about how scala works is preventing
accessibility events from propagating within the Java runtime. If
that is the case, then there is little either the older Java
Access Bridge or the new Java ATK wrapper can do. The problem
would have to be fixed within scala and how it invokes Swing and
AWT.
Good luck with this,
Peter
On 3/13/2011 4:14 AM, Michael Whapples wrote:
Hello,
I have been looking at scala for programming but noticed that
when creating a swing application using it orca does not always
seem to see when a label (possibly other parts of a GUI) are
updated. I have attached a demo application which shows the
problem (compile with scalac and run scala with the class
SwingBug).
Here is how to reproduce the bug:
* Run the scala application.
* Press the button labelled "Click me".
* use flat review to see the label below the button.
* Press the "Click me" button again and again use flat review to
look at the label.
Until flat review is used for the first time orca will see the
updating of the label. After flat review has been used once the
update of the label will not be seen by orca. I have tried
alt+tabbing to another application and back but this doesn't
help. The only thing which seems to let orca see the updates
after using flat review is to restart orca.
I have tried this using the old java access bridge (1.26.x) and
the new java ATK wrapper but both show this issue.
As the label seems to actually being updated (as seen by the
output to the text console and also after an orca restart) and
it shows with both java access bridge and java ATK wrapper I am
being lead to it being an orca bug. Can anyone shed any more
light on whether my thinking of where the bug is, whether it is
correct or not?
I nearly forgot to say, I am using the sun JDK rather than
openJDK. I know sometimes this can make a slight difference (eg.
there is a bug where eclipse doesn't shutdown properly when
assistive technology is running in gnome but the IBM JDK doesn't
show this bug).
Any help would be welcome in sorting this out.
Michael Whapples
_______________________________________________
orca-list mailing list
orca-list gnome org
http://mail.gnome.org/mailman/listinfo/orca-list
Visit http://live.gnome.org/Orca for more information on Orca.
The manual is at http://library.gnome.org/users/gnome-access-guide/nightly/ats-2.html
The FAQ is at http://live.gnome.org/Orca/FrequentlyAskedQuestions
Netiquette Guidelines are at http://live.gnome.org/Orca/FrequentlyAskedQuestions/NetiquetteGuidelines
Log bugs and feature requests at http://bugzilla.gnome.org
Find out how to help at http://live.gnome.org/Orca/HowCanIHelp
--
Peter Korn | Accessibility Principal
Phone: +1
650 5069522
500 Oracle Parkway | Redwood City, CA 94065
Oracle is committed to developing practices and products that
help protect the environment
|