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

Window management problems under KDE2 (Linux)

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 1.4.0
    • 1.0.3beta, 1.3.0, 1.3.1, 1.4.0
    • client-libs
    • 1.4
    • x86
    • linux

      orig synopsis: "Window management fault with Forte under Linux (with KDE2)"

      Name: skT45625 Date: 11/22/2000


      Unavailable to me now. The environment is the Sun released JDK1.3 (first final
      release) running on a Mandrake Linux 7.2 / x86 computer.



      Steps: Run Forte using JDK1.3 under Linux on KDE2.

      Window management is completely messed up. Windows do not appear where they
      should, and are not sized as they should (e.g. the main toolbar sometimes
      appears in the middle of the screen and is a tenth of the screen width, the
      explorer window appears anywhere on the screen and is often zero-size).

      When moving between virtual desktops, moving back to the desktop with Forte
      doesn't cause all the windows to appear again. One must find them in
      the "taskbar" and open them.

      The "find" dialog box has a special problem in that after one item is found,
      subsequent tries to open the dialog box fails; the box does not show up. One
      must go to another virtual desktop, and come back before the box appears,
      underneath another window.


      Forte (and other Netbeans binaries) executes fine on Windows, but have this
      problem on Linux.
      (Review ID: 112673)
      ======================================================================

      Name: boT120536 Date: 01/21/2001


      java version "1.3.0"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0)
      Java HotSpot(TM) Client VM (build 1.3.0, mixed mode)

      Under KDE2 (linux ) and java 1.3 modal JDialogs are
      created with unexpected sizes. This appears
      to occur only on the second dialog created.
      This problem does not appear to be present
      on jdk.1.2. This problem does not appear to occur
      on kde 1.x. It is present in jdk1.3.0_01.

      In the sample code below the first dialog appears
      correct, but the second dialog is smaller in size
      even though it is created identically to the first.


      import javax.swing.*;

      import java.awt.event.*;

      public class Test {
          public static void main( String [] arg ) {

              JFrame frame = new JFrame();
              frame.setSize( 600, 400 );
              frame.setLocation( 20, 20 );
              frame.setVisible( true );
              

              final JDialog d = new JDialog( frame, "test2", true );
              JButton b = new JButton( "exit");
              b.addActionListener( new ActionListener() {
                      public void actionPerformed( ActionEvent e ) {
                          d.setVisible( false );
                      }
                  }
              );
                          
              d.getContentPane().add( b );
              d.setSize( 200, 300 );
              d.setLocation( 50, 50 );
              d.setVisible( true );

              final JDialog d2 = new JDialog( frame, "test2", true );
              JButton b2 = new JButton( "exit");
              b2.addActionListener( new ActionListener() {
                      public void actionPerformed( ActionEvent e ) {
                          d2.setVisible( false );
                      }
                  }
              );
                          
              d2.getContentPane().add( b2 );
              d2.setSize( 200, 300 );
              d2.setLocation( 50, 50 );
              d2.setVisible( true );
              

          }

      }
      (Review ID: 115103)
      ======================================================================

      Name: krC82822 Date: 03/01/2001


      java version "1.3.1-beta"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-beta-b15)
      Java HotSpot(TM) Client VM (build 1.3.1beta-b15, mixed mode)

      Attempting to run Netbeans Development Version under KDE 2.0, the first thing
      that you'll notice is that the splash screen is reduced to a small dot on the
      screen. Also, Netbeans (and Forte for Java 2.0 as well) has a very hard time
      remembering the location of windows on the screen.
      (Review ID: 117966)
      ======================================================================

      Name: krC82822 Date: 03/15/2001


      java version "1.3.1-beta"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-beta-b15)
      Java HotSpot(TM) Client VM (build 1.3.1beta-b15, mixed mode)

      If you open a JOptionPane and then a JFrame, the size of the JFrame is wrong.

      Window manager is KDE2.

      Here is a sample program. The second frame should have a size of 320x200, but
      instead it has something like 16x10. The sample works with IBM's JDK.

      import javax.swing.*;
       
      public class Test {
        public static void main( String[] asParam ) {
          JOptionPane jop = new JOptionPane(
            "Message", JOptionPane.INFORMATION_MESSAGE
          );
          JDialog jd = jop.createDialog( null, "Title" );
          jd.setModal( false );
       
          jd.show(); // comment out this line to get the second frame right
       
          JFrame jf = new JFrame( "Frame" );
          jf.setSize( 320, 200 );
          jf.setVisible( true );
        }
      }
      (Review ID: 118797)
      ======================================================================

      Name: krC82822 Date: 04/28/2001


      java version "1.3.1-rc2"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-rc2-b23)
      Java HotSpot(TM) Client VM (build 1.3.1-rc2-b23, mixed mode)

      I cannot get a JDialog to redisplay after it has been hidden using. I have a
      JFrame constructed and displayed, then popup a custom dialog. If the user
      presses cancel, I hide the dialog by calling hide(). If I would like to show
      the dialog again, I call show() and it doesn't display. It will show if I
      minimize the dialog then maximize it again.

      This only happens when I am using the KDE 2.X desktop. It works correctly on
      KDE 1.X. So I am not sure if this is a KDE problem or JDK problem.

        To reproduce, run the code below on a system running Linux and KDE 2.X.
      Choose File->show dialog from the menu. Press the cancel button in the center
      of the dialog. Next, try to choose File->show dialog from the menu on the
      JFrame again. The dialog will not display until you minimize the JFrame and
      maximize it again.

      import java.awt.*;
      import java.awt.event.*;
      import javax.swing.*;
       
      public class MyFrame extends JFrame implements ActionListener {
       
        private JMenuItem dialogMenuItem, exitMenuItem;
        private JDialog dialog;
       
        public static void main( String[] args ) {
       
          MyFrame myFrame = new MyFrame();
          myFrame.show();
        }
       
        public MyFrame() {
       
          super("MyFrame");
       
          JMenuBar mb = new JMenuBar();
       
          JMenu fileMenu = new JMenu("File");
          fileMenu.setMnemonic(KeyEvent.VK_F);
          mb.add(fileMenu);
       
          // Login to Database
          dialogMenuItem = new JMenuItem("show dialog");
          dialogMenuItem.setMnemonic(KeyEvent.VK_I);
          dialogMenuItem.addActionListener(this);
          fileMenu.add(dialogMenuItem);
       
          exitMenuItem = new JMenuItem("Exit");
          exitMenuItem.setMnemonic(KeyEvent.VK_E);
          exitMenuItem.addActionListener(this);
          fileMenu.add(exitMenuItem);
       
          getRootPane().setJMenuBar(mb);
          setSize( 400, 300 );
        }
       
        public void actionPerformed(ActionEvent e) {
       
          Object o = e.getSource();
          if( o == exitMenuItem ) {
            System.exit(0);
          }
          else if( o == dialogMenuItem ) {
            if( dialog == null ) {
              dialog = new MyDialog(this);
            }
            dialog.setVisible(true);
          }
        }
      }
       
      class MyDialog extends JDialog implements ActionListener {
       
        private JButton cancelButton;
       
        public MyDialog(JFrame parent) {
       
          super(parent, "MyDialog", true);
       
          cancelButton = new JButton("Cancel");
          cancelButton.addActionListener(this);
       
          getContentPane().add(cancelButton);
       
          setSize( 200, 200 );
        }
       
        public void actionPerformed(ActionEvent e) {
       
          Object o = e.getSource();
          if( o == cancelButton ) {
            hide();
          }
        }
      }
      (Review ID: 123422)
      ======================================================================

            uwesunw Uwe Uwe (Inactive)
            skondamasunw Suresh Kondamareddy (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: