JAL-3322 Splashcreen now appears instantly with new setting ui.progress_sync = true...
[jalview.git] / getdown / src / getdown / launcher / src / main / java / com / threerings / getdown / launcher / Getdown.java
index 0af0360..ba238de 100644 (file)
@@ -734,8 +734,8 @@ public abstract class Getdown extends Thread
                 }
             }
 
-            _container.setVisible(true);
-            _container.validate();
+            //_container.setVisible(true);
+            //_container.validate();
 
             // if we have a UI open and we haven't been around for at least 5 seconds (the default
             // for min_show_seconds), don't stick a fork in ourselves straight away but give our
@@ -816,8 +816,8 @@ public abstract class Getdown extends Thread
                                                  instantSplashPane.setSize(bwidth,bheight);
                                                  instantSplashPane.setPreferredSize(new Dimension(bwidth,bheight));
 
-                                                 _layers.add(instantSplashPane, Integer.valueOf(0));
-                                               
+                                                 _layers.add(instantSplashPane, Integer.valueOf(1));
+                                                 
                                                  _container.setPreferredSize(new Dimension(bwidth,bheight));
                       }
                     } catch (Exception e) {
@@ -833,8 +833,8 @@ public abstract class Getdown extends Thread
                     _patchNotes.setFont(StatusPanel.FONT);
                     _layers.add(_patchNotes);
                     _status = new StatusPanel(_msgs);
-                                       //setStatusAsync("test", stepToGlobalPercent(1), -1L, false);
-                    _layers.add(_status, Integer.valueOf(10));
+                    setStatusAsync("m.initialising", 0, -1L, true);
+                    //_layers.add(_status, Integer.valueOf(2));
                     initInterface();
                 }
                 showContainer();
@@ -974,9 +974,19 @@ public abstract class Getdown extends Thread
                     _status.setProgress(0, -1L);
                 } else if (percent >= 0) {
                     _status.setProgress(percent, remaining);
+                } else {
+                       //_status.setStatus("m.initialising", false);
                 }
+                
             }
         });
+        
+        if (! _addedStatusLayer) {
+               _layers.add(_status, Integer.valueOf(2));
+               _addedStatusLayer = true;
+               initInterface();
+        }
+        
     }
 
     protected void reportTrackingEvent (String event, int progress)
@@ -1114,19 +1124,21 @@ public abstract class Getdown extends Thread
       } catch (Exception e) {
         log.warning("Could't read config when invoking GUI action", "Exception", e.getMessage());
       }
-      if (! (_ifc == null) && _ifc.progressSync) {
+      if (_ifc != null && _ifc.progressSync) {
         try {
-          //EventQueue.invokeAndWait(r);
-          r.run();
+          EventQueue.invokeAndWait(r);
+          //r.run();
         } catch (Exception e) {
           log.warning("Tried to invokeAndWait but couldn't. Going to invokeLater instead", "Exception", e.getMessage());
           EventQueue.invokeLater(r);
         }
       } else {
-        //EventQueue.invokeLater(r);
-        r.run();
+        EventQueue.invokeLater(r);
+        //r.run();
       }
       
+      //try { Thread.sleep(500); } catch (Exception e) {}
+      
     }
     
     protected Application _app;
@@ -1141,12 +1153,13 @@ public abstract class Getdown extends Thread
     protected AbortPanel _abort;
     protected RotatingBackgrounds _background;
 
+    protected boolean _addedStatusLayer;
     protected boolean _dead;
     protected boolean _silent;
     protected boolean _launchInSilent;
     protected boolean _noUpdate;
     protected long _startup;
-
+    
     protected Set<Resource> _toInstallResources;
     protected boolean _readyToInstall;