Index: ui/WizardFolder.java =================================================================== RCS file: /cvs/core/src/org/netbeans/core/ui/WizardFolder.java,v --- ui/WizardFolder.java 1.12 +++ ui/WizardFolder.java @@ -31,0 +31,1 @@ +import org.openide.util.Task; @@ -125,0 +126,35 @@ + } + + /** Ovverrides task creation policy to run tasks always in AWT thread, as + * wizards usually work with swing + */ + protected Task postCreationTask (Runnable run) { + return new AWTTask(run); + } + + /** A special task designed to run in AWT thread. + * It will fire itself immediatelly. + * Copied from openide.awt.AWTTask + */ + private static class AWTTask extends org.openide.util.Task { + private boolean executed; + + public AWTTask (Runnable r) { + super (r); + org.openide.util.Mutex.EVENT.readAccess (this); + } + + public void run () { + if (!executed) { + super.run (); + executed = true; + } + } + + public void waitFinished () { + if (javax.swing.SwingUtilities.isEventDispatchThread ()) { + run (); + } else { + super.waitFinished (); + } + } Index: windows/WindowManagerImpl.java =================================================================== RCS file: /cvs/core/src/org/netbeans/core/windows/WindowManagerImpl.java,v --- windows/WindowManagerImpl.java 1.118.2.6 +++ windows/WindowManagerImpl.java @@ -1272,0 +1272,5 @@ + // don't reset anything if no worspaces are loaded (first start for example) + if (wmi.getWorkspacesNoLoad().length == 0) { + setProjectOpen (true); + return; + }