< prev index next >
test/java/awt/EventQueue/6980209/bug6980209.java
Print this page
*** 25,69 ****
@bug 6980209
@summary Make tracking SecondaryLoop.enter/exit methods easier
@author Semyon Sadetsky
*/
import javax.swing.*;
import java.awt.*;
! import java.awt.event.ActionEvent;
! import java.awt.event.ActionListener;
! import java.awt.event.KeyEvent;
! import java.awt.event.KeyListener;
! import java.util.logging.Logger;
public class bug6980209 implements ActionListener {
! private final static Logger log =
! Logger.getLogger("java.awt.event.WaitDispatchSupport");
public static final int ATTEMPTS = 100;
public static final int EVENTS = 5;
private static boolean runInEDT;
private static JFrame frame;
private static int disorderCounter = 0;
private static Boolean enterReturn;
private static Boolean exitReturn;
private static int dispatchedEvents;
public static void main(String[] args) throws Exception {
System.out.println(
"PLEASE DO NOT TOUCH KEYBOARD AND MOUSE DURING THE TEST RUN!");
! // log.setLevel(java.util.logging.Level.FINE);
! // log.setLevel(java.util.logging.Level.FINEST);
try {
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
frame = new JFrame();
frame.setUndecorated(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setup(frame);
}
});
testExitBeforeEnter();
System.out.println("Run random test in EDT");
runInEDT = true;
testRandomly();
System.out.println("Run random test in another thread");
--- 25,84 ----
@bug 6980209
@summary Make tracking SecondaryLoop.enter/exit methods easier
@author Semyon Sadetsky
*/
+ import sun.util.logging.PlatformLogger;
+
import javax.swing.*;
import java.awt.*;
! import java.awt.event.*;
public class bug6980209 implements ActionListener {
! private final static PlatformLogger log =
! PlatformLogger.getLogger("java.awt.event.WaitDispatchSupport");
public static final int ATTEMPTS = 100;
public static final int EVENTS = 5;
private static boolean runInEDT;
private static JFrame frame;
private static int disorderCounter = 0;
private static Boolean enterReturn;
private static Boolean exitReturn;
private static int dispatchedEvents;
+ private static JButton button;
+ private static Point point;
public static void main(String[] args) throws Exception {
System.out.println(
"PLEASE DO NOT TOUCH KEYBOARD AND MOUSE DURING THE TEST RUN!");
! // log.setLevel(PlatformLogger.Level.FINE);
! // log.setLevel(PlatformLogger.Level.FINEST);
try {
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
frame = new JFrame();
frame.setUndecorated(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setup(frame);
}
});
+ final Robot robot = new Robot();
+ robot.delay(100);
+ robot.waitForIdle();
+ SwingUtilities.invokeAndWait(new Runnable() {
+ @Override
+ public void run() {
+ point = button.getLocationOnScreen();
+ }
+ });
+ robot.mouseMove( point.x + 5, point.y + 5 );
+ robot.mousePress(InputEvent.BUTTON1_MASK);
+ robot.mouseRelease(InputEvent.BUTTON1_MASK);
+ robot.delay(100);
+ robot.waitForIdle();
+
testExitBeforeEnter();
System.out.println("Run random test in EDT");
runInEDT = true;
testRandomly();
System.out.println("Run random test in another thread");
*** 100,109 ****
--- 115,125 ----
}
private static void testRandomly() throws AWTException {
disorderCounter = 0;
final Robot robot = new Robot();
+ robot.setAutoDelay(1);
for (int i = 0; i < ATTEMPTS; i++) {
enterReturn = null;
exitReturn = null;
dispatchedEvents = 0;
synchronized (bug6980209.class) {
*** 154,171 ****
ATTEMPTS);
}
}
private static void setup(final JFrame frame) {
! JButton jButton = new JButton("Button");
! frame.getContentPane().add(jButton);
! jButton.addActionListener(new bug6980209());
frame.pack();
frame.setVisible(true);
! jButton.setFocusable(true);
! jButton.requestFocus();
! jButton.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
}
@Override
--- 170,187 ----
ATTEMPTS);
}
}
private static void setup(final JFrame frame) {
! button = new JButton("Button");
! frame.getContentPane().add(button);
! button.addActionListener(new bug6980209());
frame.pack();
frame.setVisible(true);
! button.setFocusable(true);
! button.requestFocus();
! button.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
}
@Override
< prev index next >