X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FDesktop.java;h=f90752b889f1f4077c598c1738386751236098ff;hb=03e9de7cc0b1fda7a09855f884e012177e0648ee;hp=c8d900dcfab430cc9207c583654e8083c2db9775;hpb=3d0101179759ef157b088ea135423cd909512d9f;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index c8d900d..f90752b 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -68,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; @@ -269,12 +267,14 @@ public class Desktop extends jalview.jbgui.GDesktop public void endDraggingFrame(JComponent f) { delegate.endDraggingFrame(f); + desktop.repaint(); } @Override public void endResizingFrame(JComponent f) { delegate.endResizingFrame(f); + desktop.repaint(); } @Override @@ -344,10 +344,6 @@ public class Desktop extends jalview.jbgui.GDesktop boolean showjconsole = jalview.bin.Cache.getDefault("SHOW_JAVA_CONSOLE", false); desktop = new MyDesktopPane(selmemusage); - if (Platform.isAMac()) - { - desktop.setDoubleBuffered(false); - } showMemusage.setSelected(selmemusage); desktop.setBackground(Color.white); getContentPane().setLayout(new BorderLayout()); @@ -361,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) @@ -431,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() @@ -473,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() @@ -592,7 +575,7 @@ public class Desktop extends jalview.jbgui.GDesktop Desktop.instance.setProgressBar(null, now); jvnews.showNews(); } - }).start(); + }, "ShowNewsWindowThread").start(); } } } @@ -866,13 +849,7 @@ public class Desktop extends jalview.jbgui.GDesktop frame.setResizable(resizable); frame.setMaximizable(resizable); frame.setIconifiable(resizable); - if (Platform.isAMac()) - { - frame.setIconifiable(false); - frame.setFrameIcon(null); - // frame.setDesktopIcon(null); - frame.setDoubleBuffered(false); - } + if (frame.getX() < 1 && frame.getY() < 1) { frame.setLocation(xOffset * openFrameCount, @@ -892,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(); } } @@ -918,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(); }; }); @@ -1011,8 +984,8 @@ public class Desktop extends jalview.jbgui.GDesktop // Java's Transferable for native dnd evt.acceptDrop(DnDConstants.ACTION_COPY_OR_MOVE); Transferable t = evt.getTransferable(); - List files = new ArrayList(); - List protocols = new ArrayList(); + List files = new ArrayList<>(); + List protocols = new ArrayList<>(); try { @@ -1298,7 +1271,7 @@ public class Desktop extends jalview.jbgui.GDesktop { new SplashScreen(true); } - }).start(); + }, "ShowAboutMenuThread").start(); } public StringBuffer getAboutMessage(boolean shortv) @@ -1640,7 +1613,7 @@ public class Desktop extends jalview.jbgui.GDesktop } setProgressBar(null, choice.hashCode()); } - }).start(); + }, "SaveJalviewProjectThread").start(); } } @@ -1708,7 +1681,7 @@ public class Desktop extends jalview.jbgui.GDesktop } setProgressBar(null, choice.hashCode()); } - }).start(); + }, "LoadJalviewProjectThread").start(); } } @@ -1720,7 +1693,7 @@ public class Desktop extends jalview.jbgui.GDesktop JPanel progressPanel; - ArrayList fileLoadingPanels = new ArrayList(); + ArrayList fileLoadingPanels = new ArrayList<>(); public void startLoading(final String fileName) { @@ -1812,7 +1785,7 @@ public class Desktop extends jalview.jbgui.GDesktop // TODO: verify that frames are recoverable when in headless mode return null; } - List aps = new ArrayList(); + List aps = new ArrayList<>(); AlignFrame[] frames = getAlignFrames(); if (frames == null) { @@ -1847,7 +1820,7 @@ public class Desktop extends jalview.jbgui.GDesktop */ public static AlignmentViewport[] getViewports(String sequenceSetId) { - List viewp = new ArrayList(); + List viewp = new ArrayList<>(); if (desktop != null) { AlignFrame[] frames = Desktop.getAlignFrames(); @@ -2218,7 +2191,7 @@ public class Desktop extends jalview.jbgui.GDesktop dsktp.v_client.initial_update(); } - }); + }, "VamsasSessionThread"); rthr.start(); } }; @@ -2338,7 +2311,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() @@ -2360,7 +2333,7 @@ public class Desktop extends jalview.jbgui.GDesktop // SEQUENCE_ID which is not the default EMBL_EBI link ListIterator li = links.listIterator(); boolean check = false; - List urls = new ArrayList(); + List urls = new ArrayList<>(); while (li.hasNext()) { String link = li.next(); @@ -2451,9 +2424,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() @@ -2517,14 +2491,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. @@ -2545,7 +2511,7 @@ public class Desktop extends jalview.jbgui.GDesktop { return null; } - List avp = new ArrayList(); + List avp = new ArrayList<>(); // REVERSE ORDER for (int i = frames.length - 1; i > -1; i--) { @@ -2590,7 +2556,7 @@ public class Desktop extends jalview.jbgui.GDesktop { return null; } - List avp = new ArrayList(); + List avp = new ArrayList<>(); // REVERSE ORDER for (int i = frames.length - 1; i > -1; i--) { @@ -2733,8 +2699,8 @@ public class Desktop extends jalview.jbgui.GDesktop { if (progressBars == null) { - progressBars = new Hashtable(); - progressBarHandlers = new Hashtable(); + progressBars = new Hashtable<>(); + progressBarHandlers = new Hashtable<>(); } if (progressBars.get(new Long(id)) != null) @@ -2883,7 +2849,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)) @@ -3039,7 +3005,7 @@ public class Desktop extends jalview.jbgui.GDesktop progress.setProgressBar(null, this.hashCode()); } } - }).start(); + }, "OpenURLThread").start(); } public static WsParamSetManager wsparamManager = null;