Merge branch 'bug/JAL-3536getCrossrefTwice' into develop
[jalview.git] / src / jalview / gui / Desktop.java
index ed9ed50..1b8dda7 100644 (file)
@@ -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);