50 import javax.accessibility.AccessibleStateSet;
51 import javax.accessibility.AccessibleTable;
52 import javax.accessibility.AccessibleText;
53 import javax.accessibility.AccessibleValue;
54 import javax.swing.Icon;
55 import javax.swing.JComponent;
56 import javax.swing.JEditorPane;
57 import javax.swing.JLabel;
58 import javax.swing.JMenuItem;
59 import javax.swing.JTextArea;
60 import javax.swing.KeyStroke;
61
62 import sun.awt.AWTAccessor;
63 import sun.lwawt.LWWindowPeer;
64
65 class CAccessibility implements PropertyChangeListener {
66 private static Set<String> ignoredRoles;
67
68 static {
69 // Need to load the native library for this code.
70 java.security.AccessController.doPrivileged(
71 new java.security.PrivilegedAction<Void>() {
72 public Void run() {
73 System.loadLibrary("awt");
74 return null;
75 }
76 });
77 }
78
79 static CAccessibility sAccessibility;
80 static synchronized CAccessibility getAccessibility(final String[] roles) {
81 if (sAccessibility != null) return sAccessibility;
82 sAccessibility = new CAccessibility();
83
84 if (roles != null) {
85 ignoredRoles = new HashSet<String>(roles.length);
86 for (final String role : roles) ignoredRoles.add(role);
87 } else {
88 ignoredRoles = new HashSet<String>();
89 }
90
91 return sAccessibility;
92 }
93
94 private CAccessibility() {
95 KeyboardFocusManager.getCurrentKeyboardFocusManager().addPropertyChangeListener("focusOwner", this);
96 }
|
50 import javax.accessibility.AccessibleStateSet;
51 import javax.accessibility.AccessibleTable;
52 import javax.accessibility.AccessibleText;
53 import javax.accessibility.AccessibleValue;
54 import javax.swing.Icon;
55 import javax.swing.JComponent;
56 import javax.swing.JEditorPane;
57 import javax.swing.JLabel;
58 import javax.swing.JMenuItem;
59 import javax.swing.JTextArea;
60 import javax.swing.KeyStroke;
61
62 import sun.awt.AWTAccessor;
63 import sun.lwawt.LWWindowPeer;
64
65 class CAccessibility implements PropertyChangeListener {
66 private static Set<String> ignoredRoles;
67
68 static {
69 // Need to load the native library for this code.
70 jdk.internal.access.SharedSecrets.getJavaLangAccess().loadLibrary("awt");
71 }
72
73 static CAccessibility sAccessibility;
74 static synchronized CAccessibility getAccessibility(final String[] roles) {
75 if (sAccessibility != null) return sAccessibility;
76 sAccessibility = new CAccessibility();
77
78 if (roles != null) {
79 ignoredRoles = new HashSet<String>(roles.length);
80 for (final String role : roles) ignoredRoles.add(role);
81 } else {
82 ignoredRoles = new HashSet<String>();
83 }
84
85 return sAccessibility;
86 }
87
88 private CAccessibility() {
89 KeyboardFocusManager.getCurrentKeyboardFocusManager().addPropertyChangeListener("focusOwner", this);
90 }
|