Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8013425

Cursor freeze when launching application via 'X emulator' from Windows

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P3 P3
    • None
    • 7u10
    • client-libs

      FULL PRODUCT VERSION :
      Java 1.7.0_10-b18

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows 7 Version 6.1 (Build 7600)

      EXTRA RELEVANT SYSTEM CONFIGURATION :
      This issue requires launching a Java 7 application via an X emulator. One such configuration:

       X-server: Cygwin/X X Server, Version 1.13.1-1 built on 2012-12-19

      A DESCRIPTION OF THE PROBLEM :
      When launching a Java 7 Swing application from Linux, via a Windows/X-emulator configuration, the cursor in any text field will freeze once a second Frame in launched from within the same process..

      REGRESSION. Last worked in version 6u31

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      1. Compile and run the attached sample code in Java 7 from an X-emulator so the application originates from Linux, but is visable on Windows

      2. Use the JButton to spawn a second JFrame

      3. Notice that you can no longer type in either of the text fields.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      I would expect both text fields to continue to be usable.
      ACTUAL -
      The cursor freezes up in both of the texts fields preventing any text from being entered.

      REPRODUCIBILITY :
      This bug can be reproduced often.

      ---------- BEGIN SOURCE ----------
      import javax.swing.JButton;
      import javax.swing.JComponent;
      import javax.swing.JFrame;
      import javax.swing.JInternalFrame;
      import javax.swing.JTextArea;
      import java.awt.BorderLayout;
      import java.awt.event.ActionEvent;
      import java.awt.event.ActionListener;

      public class TestTwoFrames {
          public static void main(String[] args) {
              final JButton button = new JButton( " Open 2nd frame " );
              JFrame frame = createJFrame(button);

              frame.setVisible(true);

              button.addActionListener(new ActionListener() {
                  @Override
                  public void actionPerformed(ActionEvent e) {
                      createJFrame(null).setVisible(true);
                  }
              });
          }

          private static JFrame createJFrame(JComponent southie) {
              JFrame frame = new JFrame();

              JTextArea textArea = new JTextArea(10, 50);

              frame.add(textArea);

              if (southie != null) {
                  frame.add(southie, BorderLayout.SOUTH);
              }

              frame.pack();

              return frame;
          }

      }
      ---------- END SOURCE ----------

      CUSTOMER SUBMITTED WORKAROUND :
      Do not spawn a second frame in the same process.

            Unassigned Unassigned
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: