formatting
[jalview.git] / src / jalview / gui / Desktop.java
index 6617c6e..6d8f125 100755 (executable)
@@ -19,7 +19,6 @@
 package jalview.gui;
 
 import jalview.io.*;
-
 import java.awt.*;
 import java.awt.datatransfer.*;
 import java.awt.dnd.*;
@@ -47,6 +46,7 @@ public class Desktop extends jalview.jbgui.GDesktop
     public static jalview.ws.Discoverer discoverer;
 
     public static Object [] jalviewClipboard;
+    public static boolean internalCopy = false;
 
     static int fileLoadingCount= 0;
 
@@ -212,6 +212,7 @@ public class Desktop extends jalview.jbgui.GDesktop
                 public void internalFrameClosed(
                     javax.swing.event.InternalFrameEvent evt)
                 {
+                    PaintRefresher.RemoveComponent(frame);
                     openFrameCount--;
                     windowMenu.remove(menuItem);
                     JInternalFrame itf = desktop.getSelectedFrame();
@@ -250,7 +251,10 @@ public class Desktop extends jalview.jbgui.GDesktop
 
     public void lostOwnership(Clipboard clipboard, Transferable contents)
     {
-      Desktop.jalviewClipboard = null;
+      if (!internalCopy)
+        Desktop.jalviewClipboard = null;
+
+      internalCopy = false;
     }
 
     public void dragEnter(DropTargetDragEvent evt)
@@ -879,5 +883,15 @@ public class Desktop extends jalview.jbgui.GDesktop
       vamsasStop.setVisible(!b);
 
     }
+    /**
+     * Checks the given url to see if it gives a response indicating that 
+     * the user should be informed of a new questionnaire.
+     * @param url
+     */
+    public void checkForQuestionnaire(String url) {
+        UserQuestionnaireCheck jvq = new UserQuestionnaireCheck(url);
+        javax.swing.SwingUtilities.invokeLater(jvq);
+    }
+
 }