X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FDesktop.java;h=1b8dda7cef1fbfd753899f583dc7ba9782494c70;hb=23acdc937f2eb189a4736f8a4c3dba924e1ebbce;hp=ed9ed504c9cb312e17688761266f7bcb0ceb2ffa;hpb=1b378087ec2d5be9b290cd63c45bfdb9e75269fb;p=jalview.git diff --git a/src/jalview/gui/Desktop.java b/src/jalview/gui/Desktop.java index ed9ed50..1b8dda7 100644 --- a/src/jalview/gui/Desktop.java +++ b/src/jalview/gui/Desktop.java @@ -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);