JDK-7124306 : [macosx] VoiceOver cursor not on currently focused object when app gets focus
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 7
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: os_x
  • CPU: generic
  • Submitted: 2011-12-23
  • Updated: 2013-11-01
  • Resolved: 2012-03-23
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7
7u4 b11Fixed
Related Reports
Duplicate :  
Description
http://java.net/jira/browse/MACOSX_PORT-628 submitted 2011/11/02 by Pete Brunet

.SUMMARY
VoiceOver cursor not on currently focused object when app gets focus
.STEPS TO REPRODUCE
1. Start VoiceOver (Command F5), using default settings, e.g. the VO cursor tracking the focused control.
2. cd ~/OpenJDK/macosx-port/build/macosx-universal/
3. bin/java -jar /Library/Java/Demos/JFC/SwingSet2/SwingSet2.jar
.RESULTS
When SwingSet2 starts VO reads "close button" rather than the button which has focus (the first toolbar button, or where focus is if focus was moved away from and back to SwingSet2).
.VERSION
OS:
OSX 10.7.2
Java: 
openjdk version "1.7.0-internal"
OpenJDK Runtime Environment (build 1.7.0-internal-petebrunet_2011_10_08_00_36-b00)
OpenJDK 64-Bit Server VM (build 21.0-b17, mixed mode)
.REGRESSION
Provide information on steps taken to isolate the problem.
Describe circumstances where the problem occurs or does not occur,
such as software versions and/or hardware configurations.
.NOTES
Attach any relevant screen shots, crash logs, or console output.
Describe anything else that might be useful in resolving the problem,
such as leads on diagnosis, any workarounds, or first observed configuration.

Comments
Installed b112, started SwingSet2, the VO focus box as on the control that had focus, i.e. the first button in the SwingSet2 tool bar. The problem before was that VO would instead read the close button up in the title bar. Adding 8-na tag. Note that the Mac JDK a11y support has a lot of issues. In this case I see that when that first button gets focus what is heard is "checked checkbox" On Windows you hear "JInternalFrame Toggle Button pressed". So the Mac implementation is missing the accessible name. Also the accessible role is probably wrong, i.e. checkbox instead of toggle button. Opened JDK-8027707.
01-11-2013

SUGGESTED FIX A fix that has been tested is located here: http://cr.openjdk.java.net/~ptbrunet/7124306/webrev/ The fix is for this file: - JavaAccessibilityUtilities.m These two files only have changes to comments: - CGraphicsDevice.m - CMenuItem.m The webrev also contains the fix for 7124303 which has already been pushed so the patch to these two files can be ignored: - AWTView.m - JavaComponentAccessibility.m
18-01-2012

EVALUATION Author: Pete Brunet Date: 06/Dec/11 02:04 AM An alternative set of instructions that assumes Java is not yet installed... 1. Download and install the latest driver: <span class=&quot;nobr&quot;><a href=&quot;http://jdk7.java.net/macportpreview/&quot;>http://jdk7.java.net/macportpreview/<sup><img class=&quot;rendericon&quot; src=&quot;/jira/images/icons/linkext7.gif&quot; height=&quot;7&quot; width=&quot;7&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/></sup></a></span> 2. Start VoiceOver (Command F5), using default settings, e.g. the VO cursor tracking the focused control. 2. cd /Library/Java/JavaVirtualMachines/JDK\ 1.7.0\ Developer\ Preview.jdk/Contents/Home/ 3. bin/java -jar /Library/Java/Demos/JFC/SwingSet2/SwingSet2.jar
23-12-2011