--- /dev/null
+package jalview.gui;
+
+import static org.junit.Assert.*;
+import jalview.bin.Cache;
+
+import java.awt.Component;
+import java.awt.Dimension;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.MouseEvent;
+import java.awt.event.MouseListener;
+
+import javax.swing.JDesktopPane;
+import javax.swing.JFrame;
+import javax.swing.JInternalFrame;
+import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+import javax.swing.JPanel;
+import javax.swing.JTextArea;
+
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+public class JAL1353bugdemo
+{
+
+ @BeforeClass
+ public static void setUpBeforeClass() throws Exception
+ {
+ }
+
+ @AfterClass
+ public static void tearDownAfterClass() throws Exception
+ {
+ }
+ volatile boolean finish=false;
+
+ @Test
+ public void test()
+ {
+ Cache.initLogger();
+ // final Desktop foo = new Desktop();
+ final JFrame cfoo = new JFrame("Crash Java");
+ final JDesktopPane foo=new JDesktopPane();
+ foo.setPreferredSize(new Dimension(600,800));
+ cfoo.setSize(600, 800);
+ final JInternalFrame cont = new JInternalFrame("My Frame");
+ JTextArea evt;
+ cont.setPreferredSize(new Dimension(400, 300));
+ cont.add(evt=new JTextArea("Click here and drag text over this window to freeze java.\n\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\nThis is a dummy string. See teh dummy string go.\n"));
+ cont.pack();
+ foo.add("A frame",cont);
+ foo.setVisible(true);
+ foo.setEnabled(true);
+ foo.doLayout();
+ cfoo.add(foo);
+ final JMenu jm = new JMenu("Do");
+ JMenuItem jmi=new JMenuItem("this");
+ jm.add(jmi);
+ evt.addMouseListener(new MouseListener()
+ {
+
+ @Override
+ public void mouseReleased(MouseEvent e)
+ {
+ }
+
+ @Override
+ public void mousePressed(MouseEvent e)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void mouseExited(MouseEvent e)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void mouseEntered(MouseEvent e)
+ {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void mouseClicked(MouseEvent e)
+ {
+// JFrame parent = new JFrame();
+// parent.setBounds(foo.getBounds());
+// JPanel oo = new JPanel();
+// parent.add(oo);
+// oo.setVisible(true);
+// parent.setVisible(true);
+ EditNameDialog end =new EditNameDialog("Sequence Name", "Sequence Description","label 1", "Label 2", "Try and drag between the two text fields", foo);//);cont.getRootPane());
+ assert(end!=null);
+ finish=true;
+ }
+ });
+ cont.setVisible(true);
+
+ jmi.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent arg0)
+ {
+ EditNameDialog end =new EditNameDialog("Sequence Name", "Sequence Description","label 1", "Label 2", "Try and drag between the two text fields", cont);
+ assert(end!=null);
+ finish=true;
+ }
+ });
+ foo.setVisible(true);
+ cfoo.setVisible(true);
+ while (!finish)
+ {
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException x) {}
+ }
+ }
+
+}