summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java b/src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java
index b626ed282..35a2d9669 100644
--- a/src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java
+++ b/src/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java
@@ -130,19 +130,22 @@ public class AWTRobotUtil {
robot.mouseMove( (int) p0.getX(), (int) p0.getY() );
robot.delay(ROBOT_DELAY);
- javax.swing.SwingUtilities.invokeAndWait(new Runnable() {
- public void run() {
- window.setVisible(true);
- window.toFront();
- window.requestFocus();
- }});
- robot.delay(ROBOT_DELAY);
-
- int wait;
- for (wait=0; wait<POLL_DIVIDER && !window.hasFocus(); wait++) {
+ int wait=0;
+ do {
+ final int _wait = wait;
+ javax.swing.SwingUtilities.invokeAndWait(new Runnable() {
+ public void run() {
+ if(0==_wait) {
+ window.setVisible(true);
+ window.toFront();
+ }
+ window.requestFocus();
+ }});
Thread.sleep(TIME_SLICE);
- }
+ wait++;
+ } while (wait<POLL_DIVIDER && !window.hasFocus());
final boolean success = wait<POLL_DIVIDER;
+
window.removeWindowFocusListener(winFA);
if(!success) {
System.err.println("*** AWTRobotUtil.toFrontAndRequestFocus() UI failure");