JAL-3493 fix patch for 2.11.1_js (nb - these changes should not be merged to 2.11.2!)
[jalview.git] / src / jalview / gui / AlignmentPanel.java
index cf45483..277e11d 100644 (file)
@@ -602,18 +602,9 @@ public class AlignmentPanel extends GAlignmentPanel implements
 
   /**
    * update alignment layout for viewport settings
-   * 
-   * @param wrap
-   *          DOCUMENT ME!
    */
   public void updateLayout()
   {
-    // BH 2020.06.09 avoid negative values for SequencePanel and SeqCanvas dimensions
-//    if (getTopLevelAncestor() == null)
-//    {
-//      return;
-//    }
-
     ViewportRanges ranges = av.getRanges();
     fontChanged();
     setAnnotationVisible(av.isShowAnnotation());
@@ -632,9 +623,24 @@ public class AlignmentPanel extends GAlignmentPanel implements
     {
       annotationScroller.setVisible(true);
       annotationSpaceFillerHolder.setVisible(true);
-      validateAnnotationDimensions(false);
     }
 
+    idSpaceFillerPanel1.setVisible(!wrap);
+
+    /*
+     * defer dimension calculations if panel not yet added to a Window
+     * BH 2020.06.09
+     */
+    if (getTopLevelAncestor() == null)
+    {
+      repaint();
+      return;
+    }
+
+    if (!wrap && av.isShowAnnotation())
+    {
+      validateAnnotationDimensions(false);
+    }
     int canvasWidth = getSeqPanel().seqCanvas.getWidth();
     if (canvasWidth > 0)
     { // may not yet be laid out
@@ -655,12 +661,8 @@ public class AlignmentPanel extends GAlignmentPanel implements
       }
     }
 
-    idSpaceFillerPanel1.setVisible(!wrap);
-
     // System.out.println("ap dim = " + getSize());
-
     // these values will go negative if getSize() returns (0,0):
-
     // System.out.println("seqpan dim = " + getSeqPanel().getSize());
     // System.out.println("seqcan dim = " + getSeqPanel().seqCanvas.getSize());
 
@@ -1940,7 +1942,7 @@ public class AlignmentPanel extends GAlignmentPanel implements
     }
     av.setSelectionGroup(null);
     av.getColumnSelection().clear();
-    av.setSelectionGroup(null);
+    av.setSearchResults(null);
     getIdPanel().getIdCanvas().searchResults = null;
     av.sendSelection();
     // JAL-2034 - should delegate to