JAl-2034 Ported to applet bug/JAL-2034contextchange
authorkiramt <k.mourao@dundee.ac.uk>
Thu, 25 May 2017 13:31:51 +0000 (14:31 +0100)
committerkiramt <k.mourao@dundee.ac.uk>
Thu, 25 May 2017 13:31:51 +0000 (14:31 +0100)
src/jalview/appletgui/SeqPanel.java

index d46cc34..0e12d74 100644 (file)
@@ -585,13 +585,13 @@ public class SeqPanel extends Panel implements MouseMotionListener,
   @Override
   public void mouseReleased(MouseEvent evt)
   {
+    boolean didDrag = mouseDragging; // did we come here after a drag
     mouseDragging = false;
     mouseWheelPressed = false;
-    ap.paintAlignment(true);
 
     if (!editingSeqs)
     {
-      doMouseReleasedDefineMode(evt);
+      doMouseReleasedDefineMode(evt, didDrag);
       return;
     }
 
@@ -1463,7 +1463,7 @@ public class SeqPanel extends Panel implements MouseMotionListener,
           {
             if (links == null)
             {
-              links = new Vector<String>();
+              links = new Vector<>();
             }
             for (int j = 0; j < allFeatures[i].links.size(); j++)
             {
@@ -1512,7 +1512,7 @@ public class SeqPanel extends Panel implements MouseMotionListener,
     }
   }
 
-  public void doMouseReleasedDefineMode(MouseEvent evt)
+  public void doMouseReleasedDefineMode(MouseEvent evt, boolean afterDrag)
   {
     if (stretchGroup == null)
     {
@@ -1522,7 +1522,8 @@ public class SeqPanel extends Panel implements MouseMotionListener,
     // but defer colourscheme update until hidden sequences are passed in
     boolean vischange = stretchGroup.recalcConservation(true);
     // here we rely on stretchGroup == av.getSelection()
-    needOverviewUpdate |= vischange && av.isSelectionDefinedGroup();
+    needOverviewUpdate |= vischange && av.isSelectionDefinedGroup()
+            && afterDrag;
     if (stretchGroup.cs != null)
     {
       stretchGroup.cs.alignmentChanged(stretchGroup,