Browse Source

Fixed a bug in WelcomeScreen appearing due to the new multithreaded architecture of it

MeFisto94 9 years ago
parent
commit
62b93ee737

+ 12 - 7
jme3-welcome-screen/src/com/jme3/gde/welcome/WelcomeScreenTopComponent.java

@@ -122,13 +122,18 @@ public final class WelcomeScreenTopComponent extends TopComponent implements Hyp
             }
             }
             logger.log(Level.INFO, "Checking page id {0} vs stored id {1}", new Object[]{lastMod, lastCheck});
             logger.log(Level.INFO, "Checking page id {0} vs stored id {1}", new Object[]{lastMod, lastCheck});
             if (lastCheck != lastMod) {
             if (lastCheck != lastMod) {
-                WelcomeScreenTopComponent tc = (WelcomeScreenTopComponent) WindowManager.getDefault().findTopComponent("WelcomeScreenTopComponent");
-                if (tc != null) {
-                    tc.open();
-                    tc.requestActive();
-                } else {
-                    logger.log(Level.WARNING, "Did not find Welcome Screen window");
-                }
+                SwingUtilities.invokeLater(new Runnable() {
+                    @Override
+                    public void run() {
+                        WelcomeScreenTopComponent tc = (WelcomeScreenTopComponent) WindowManager.getDefault().findTopComponent("WelcomeScreenTopComponent");
+                        if (tc != null) {
+                            tc.open();
+                            tc.requestActive();
+                        } else {
+                            logger.log(Level.WARNING, "Did not find Welcome Screen window");
+                        }
+                    }
+                });
             }
             }
         } catch (IOException ex) {
         } catch (IOException ex) {
             Exceptions.printStackTrace(ex);
             Exceptions.printStackTrace(ex);