test/java/awt/event/KeyEvent/DeadKey/deadKeyMacOSX.java

Print this page

        

*** 24,58 **** /* * @test * @bug 7196547 * @summary Dead Key implementation for KeyEvent on Mac OS X * @author alexandr.scherbatiy area=awt.event * @run main deadKeyMacOSX */ import java.awt.*; import java.awt.event.*; import java.awt.event.KeyEvent; ! import sun.awt.OSInfo; ! import sun.awt.SunToolkit; public class deadKeyMacOSX { - private static SunToolkit toolkit; private static volatile int state = 0; public static void main(String[] args) throws Exception { if (OSInfo.getOSType() != OSInfo.OSType.MACOSX) { return; } - toolkit = (SunToolkit) Toolkit.getDefaultToolkit(); Robot robot = new Robot(); robot.setAutoDelay(50); ! createAndShowGUI(); // Pressed keys: Alt + E + A // Results: ALT + VK_DEAD_ACUTE + a with accute accent robot.keyPress(KeyEvent.VK_ALT); robot.keyPress(KeyEvent.VK_E); --- 24,58 ---- /* * @test * @bug 7196547 * @summary Dead Key implementation for KeyEvent on Mac OS X * @author alexandr.scherbatiy area=awt.event + * @library ../../../../../lib/testlibrary + * @build jdk.testlibrary.OSInfo * @run main deadKeyMacOSX */ import java.awt.*; import java.awt.event.*; import java.awt.event.KeyEvent; ! ! import jdk.testlibrary.OSInfo; public class deadKeyMacOSX { private static volatile int state = 0; public static void main(String[] args) throws Exception { if (OSInfo.getOSType() != OSInfo.OSType.MACOSX) { return; } Robot robot = new Robot(); robot.setAutoDelay(50); ! createAndShowGUI(robot); // Pressed keys: Alt + E + A // Results: ALT + VK_DEAD_ACUTE + a with accute accent robot.keyPress(KeyEvent.VK_ALT); robot.keyPress(KeyEvent.VK_E);
*** 65,85 **** if (state != 3) { throw new RuntimeException("Wrong number of key events."); } } ! static void createAndShowGUI() { Frame frame = new Frame(); frame.setSize(300, 300); Panel panel = new Panel(); panel.addKeyListener(new DeadKeyListener()); frame.add(panel); frame.setVisible(true); ! toolkit.realSync(); panel.requestFocusInWindow(); ! toolkit.realSync(); } static class DeadKeyListener extends KeyAdapter { @Override --- 65,85 ---- if (state != 3) { throw new RuntimeException("Wrong number of key events."); } } ! static void createAndShowGUI(Robot robot) { Frame frame = new Frame(); frame.setSize(300, 300); Panel panel = new Panel(); panel.addKeyListener(new DeadKeyListener()); frame.add(panel); frame.setVisible(true); ! robot.waitForIdle(); panel.requestFocusInWindow(); ! robot.waitForIdle(); } static class DeadKeyListener extends KeyAdapter { @Override