X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FDesktop.java;h=ca82d90108383c557d95c807ef0aacf3bbeb3f51;hb=57c323c357199f78a812adb4d63290a3347f4097;hp=65eda4b10bf6e33d72bd49a5f34c96dcf80f0bb4;hpb=518409a5902589799950885ac00c8ce685969414;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index 65eda4b..ca82d90 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -41,6 +41,7 @@ import jalview.structure.StructureSelectionManager; import jalview.urls.IdOrgSettings; import jalview.util.ImageMaker; import jalview.util.MessageManager; +import jalview.util.Platform; import jalview.util.UrlConstants; import jalview.viewmodel.AlignmentViewport; import jalview.ws.params.ParamManager; @@ -67,8 +68,6 @@ import java.awt.dnd.DropTargetEvent; import java.awt.dnd.DropTargetListener; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.awt.event.FocusEvent; -import java.awt.event.FocusListener; import java.awt.event.KeyEvent; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; @@ -358,7 +357,12 @@ public class Desktop extends jalview.jbgui.GDesktop // This line prevents Windows Look&Feel resizing all new windows to maximum // if previous window was maximised desktop.setDesktopManager( - new MyDesktopManager(new DefaultDesktopManager())); + new MyDesktopManager( + (Platform.isWindows() ? new DefaultDesktopManager() + : Platform.isAMac() + ? new AquaInternalFrameManager( + desktop.getDesktopManager()) + : desktop.getDesktopManager()))); Rectangle dims = getLastKnownDimensions(""); if (dims != null) @@ -428,24 +432,6 @@ public class Desktop extends jalview.jbgui.GDesktop }); desktop.addMouseListener(ma); - this.addFocusListener(new FocusListener() - { - - @Override - public void focusLost(FocusEvent e) - { - // TODO Auto-generated method stub - - } - - @Override - public void focusGained(FocusEvent e) - { - Cache.log.debug("Relaying windows after focus gain"); - // make sure that we sort windows properly after we gain focus - instance.relayerWindows(); - } - }); this.setDropTarget(new java.awt.dnd.DropTarget(desktop, this)); // Spawn a thread that shows the splashscreen SwingUtilities.invokeLater(new Runnable() @@ -470,7 +456,7 @@ public class Desktop extends jalview.jbgui.GDesktop fileFormat); Cache.log.debug("Filechooser init thread finished."); } - }).start(); + }, "InitFileChooserThread").start(); // Add the service change listener changeSupport.addJalviewPropertyChangeListener("services", new PropertyChangeListener() @@ -589,7 +575,7 @@ public class Desktop extends jalview.jbgui.GDesktop Desktop.instance.setProgressBar(null, now); jvnews.showNews(); } - }).start(); + }, "ShowNewsWindowThread").start(); } } } @@ -883,6 +869,10 @@ public class Desktop extends jalview.jbgui.GDesktop JInternalFrame itf = desktop.getSelectedFrame(); if (itf != null) { + if (itf instanceof AlignFrame) + { + Jalview.setCurrentAlignFrame((AlignFrame) itf); + } itf.requestFocus(); } } @@ -909,15 +899,7 @@ public class Desktop extends jalview.jbgui.GDesktop menuItem.removeActionListener(menuItem.getActionListeners()[0]); } windowMenu.remove(menuItem); - JInternalFrame itf = desktop.getSelectedFrame(); - if (itf != null) - { - itf.requestFocus(); - if (itf instanceof AlignFrame) - { - Jalview.setCurrentAlignFrame((AlignFrame) itf); - } - } + System.gc(); }; }); @@ -1179,8 +1161,9 @@ public class Desktop extends jalview.jbgui.GDesktop if (format == null) { JvOptionPane.showInternalMessageDialog(Desktop.desktop, - MessageManager.formatMessage("label.couldnt_locate", - new Object[] + MessageManager.formatMessage( + "label.couldnt_locate", + new String[] { url }), MessageManager.getString("label.url_not_found"), JvOptionPane.WARNING_MESSAGE); @@ -1289,7 +1272,7 @@ public class Desktop extends jalview.jbgui.GDesktop { new SplashScreen(true); } - }).start(); + }, "ShowAboutMenuThread").start(); } public StringBuffer getAboutMessage(boolean shortv) @@ -1631,7 +1614,7 @@ public class Desktop extends jalview.jbgui.GDesktop } setProgressBar(null, choice.hashCode()); } - }).start(); + }, "SaveJalviewProjectThread").start(); } } @@ -1699,7 +1682,7 @@ public class Desktop extends jalview.jbgui.GDesktop } setProgressBar(null, choice.hashCode()); } - }).start(); + }, "LoadJalviewProjectThread").start(); } } @@ -2209,7 +2192,7 @@ public class Desktop extends jalview.jbgui.GDesktop dsktp.v_client.initial_update(); } - }); + }, "VamsasSessionThread"); rthr.start(); } }; @@ -2329,7 +2312,7 @@ public class Desktop extends jalview.jbgui.GDesktop { UserQuestionnaireCheck jvq = new UserQuestionnaireCheck(url); // javax.swing.SwingUtilities.invokeLater(jvq); - new Thread(jvq).start(); + new Thread(jvq, "CheckQuestionnaireThread").start(); } public void checkURLLinks() @@ -2442,9 +2425,10 @@ public class Desktop extends jalview.jbgui.GDesktop this.showMemoryUsage = showMemory; if (showMemory) { - Thread worker = new Thread(this); + Thread worker = new Thread(this, "ShowMemoryUsageThread"); worker.start(); } + repaint(); } public boolean isShowMemoryUsage() @@ -2508,14 +2492,6 @@ public class Desktop extends jalview.jbgui.GDesktop } } - /** - * fixes stacking order after a modal dialog to ensure windows that should be - * on top actually are - */ - public void relayerWindows() - { - - } /** * Accessor method to quickly get all the AlignmentFrames loaded. @@ -2874,7 +2850,7 @@ public class Desktop extends jalview.jbgui.GDesktop } // JAL-940 - disabled JWS1 service configuration - always start discoverer // until we phase out completely - (t0 = new Thread(discoverer)).start(); + (t0 = new Thread(discoverer, "DiscovererThread")).start(); } if (Cache.getDefault("SHOW_JWS2_SERVICES", true)) @@ -3030,7 +3006,7 @@ public class Desktop extends jalview.jbgui.GDesktop progress.setProgressBar(null, this.hashCode()); } } - }).start(); + }, "OpenURLThread").start(); } public static WsParamSetManager wsparamManager = null;