Project: SWT
Bug 311462 Timer does not run when FileDialog is open
Reported: 2010-05-03 21:28:02 | Status: resolved fixed

import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.*; import org.eclipse.swt.widgets.*; public class PRxx { public static void main(String[] args) { final Display display = new Display(); Shell shell = new Shell(display); shell.setLayout(new GridLayout(1, false)); display.timerExec(100, new Runnable() { public void run() { System.out.println("timer"); display.timerExec(100, this); } }); shell.pack(); shell.open(); FileDialog dialog = new FileDialog(shell, SWT.NONE); dialog.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); } }

Files changed in fix:
bundles/org.eclipse.swt/Eclipse SWT/cocoa/org/eclipse/swt/widgets/Display.java