package org.robotframework.swing.util; import org.netbeans.jemmy.EventTool; import org.netbeans.jemmy.TimeoutExpiredException; /** * This class provides an interface for waiting between swing library events. * Originally we used EventTool.waitNoEvent from jemmy without any event filter. * This is bad(tm) because some applications cause events continuously. * * Now trying to wait for maximum 600ms second (or given time). */ public class SwingWaiter { private static EventTool eventTool = new EventTool(); public static void waitToAvoidInstability(int time) { try { eventTool.getTimeouts().setTimeout("EventTool.WaitNoEventTimeout", Math.max(600, time)); eventTool.waitNoEvent(time); } catch (TimeoutExpiredException e) { // Ignore } } }