JDK-5070056 : REGRESSION: JWindow stays on top of all other windows
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 5.0
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: linux
  • CPU: x86
  • Submitted: 2004-06-30
  • Updated: 2014-10-26
  • Resolved: 2006-11-21
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7
7 b03Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Description
Name: gm110360			Date: 06/30/2004


FULL PRODUCT VERSION :
java version "1.5.0-beta3"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta3-b56)
Java HotSpot(TM) Client VM (build 1.5.0-beta3-b56, mixed mode, sharing)


ADDITIONAL OS VERSION INFORMATION :
Linux linux 2.4.19-4GB #1 Fri Apr 2 19:59:17 UTC 2004 i686 unknown


EXTRA RELEVANT SYSTEM CONFIGURATION :
Using Java Desktop Release 2

A DESCRIPTION OF THE PROBLEM :
JWindow stays up on top of all other windows hiding other windows behind it.  Run the example below and try to move other frames or dialogs on top of the JWindow.

You can not change it even if you set setAlwaysOnTop to false. This breaks backwards compatibility. This issue only happens on the linux version. Windows version is fine.

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Please see below

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
JWindow should have proper z ordering just like  before unless you setAlwaysOnTop to True
ACTUAL -
Stays on top

REPRODUCIBILITY :
This bug can be reproduced always.

---------- BEGIN SOURCE ----------
public class Test {
    public static void main(String[] args) {
        javax.swing.JWindow win = new javax.swing.JWindow();
        win.setBounds(0,0,100,100);
        win.show();
        
        javax.swing.JDialog dialog = new
           javax.swing.JDialog((java.awt.Frame)null, true);
        dialog.setBounds(0,0,50,50);
        dialog.show();
    }
}
---------- END SOURCE ----------

Release Regression From : 1.4.2
The above release value was the last known release where this 
bug was known to work. Since then there has been a regression.

(Incident Review ID: 280555) 
======================================================================

Comments
EVALUATION Fixed with 6380835.
06-10-2006

EVALUATION Happens because we use override_redirect windows which always stay above any other windows on the desktop. Not a critical issue for Tiger - Windows are not supposed to be used as long-term toplevels, use undecorated Frames instead. However, we will try to fix this in Mustang. ###@###.### 2004-07-09
09-07-2004