title: Default Button after dispose and setVisible
body: <p>given the following code:</p>
  
  <pre><code>public class DialogTest implements ActionListener {
    public static void main(String[] args) {DialogTest g = new DialogTest();}
  
    public DialogTest() {
      JButton b1 = new JButton("Button A");
      b1.addActionListener(this);
      JDialog d = new JDialog();
      d.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
      JPanel p = new JPanel();
      p.add(b1);
      d.add(p);
      d.getRootPane().setDefaultButton(b1);
      d.pack();
      d.setVisible(true);
      d.dispose();
      d.pack();
      d.setVisible(true);
    }
  
    public void actionPerformed(ActionEvent e) {System.out.println("hello");}
  }
  </code></pre>
  
  <p>Shouldn't pressing the Enter key write something to the console? According to the docs (<a href="http://java.sun.com/javase/7/docs/api/java/awt/Window.html#dispose()" rel="nofollow noreferrer">http://java.sun.com/javase/7/docs/api/java/awt/Window.html#dispose()</a>):</p>
  
  <blockquote>
    <p>The Window and its subcomponents can
    be made displayable again by
    rebuilding the native resources with a
    subsequent call to pack or show. <strong>The
    states of the recreated Window and its
    subcomponents will be identical to the
    states of these objects at the point
    where the Window was disposed</strong></p>
  </blockquote>
  
  <p>Is this intended behaviour?</p>