X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FDesktop.java;h=7564dda8f9171496a7fc55727552619dd84cb45a;hb=c43bf66142660933dbe5b62c8d1a9e18eb75e439;hp=ed9ed504c9cb312e17688761266f7bcb0ceb2ffa;hpb=1b378087ec2d5be9b290cd63c45bfdb9e75269fb;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index ed9ed50..7564dda 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -143,7 +143,7 @@ public class Desktop extends jalview.jbgui.GDesktop protected static final String CONFIRM_KEYBOARD_QUIT = "CONFIRM_KEYBOARD_QUIT"; - public static HashMap savingFiles = new HashMap<>(); + public static HashMap savingFiles = new HashMap(); private JalviewChangeSupport changeSupport = new JalviewChangeSupport(); @@ -1924,7 +1924,10 @@ public class Desktop extends jalview.jbgui.GDesktop } // FIXME: ideally should use UI interface API - FeatureSettings viewFeatureSettings = af.featureSettings; + FeatureSettings viewFeatureSettings = (af.featureSettings != null + && af.featureSettings.isOpen()) + ? af.featureSettings + : null; Rectangle fsBounds = af.getFeatureSettingsGeometry(); for (int i = 0; i < size; i++) { @@ -1935,9 +1938,10 @@ public class Desktop extends jalview.jbgui.GDesktop // transfer reference for existing feature settings to new alignFrame if (ap == af.alignPanel) { - newaf.featureSettings = (viewFeatureSettings.fr.ap == ap) - ? viewFeatureSettings - : null; + if (viewFeatureSettings != null && viewFeatureSettings.fr.ap == ap) + { + newaf.featureSettings = viewFeatureSettings; + } newaf.setFeatureSettingsGeometry(fsBounds); } @@ -1966,6 +1970,7 @@ public class Desktop extends jalview.jbgui.GDesktop } } + af.featureSettings = null; af.alignPanels.clear(); af.closeMenuItem_actionPerformed(true);