JDK-6514512 : toBack does not push a Dialog having a visible parent to the back of another Frame
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: OpenJDK6,6u5,6u11,6u12,6u12-rev,7
  • Priority: P3
  • Status: Closed
  • Resolution: Not an Issue
  • OS:
    linux_redhat_5.0,linux_suse_sles_10,linux_ubuntu,solaris,solaris_2.5.1 linux_redhat_5.0,linux_suse_sles_10,linux_ubuntu,solaris,solaris_2.5.1
  • CPU: generic,x86,sparc
  • Submitted: 2007-01-18
  • Updated: 2013-07-01
  • Resolved: 2007-05-15
Related Reports
Duplicate :  
Duplicate :  
Duplicate :  
Relates :  
This behavior is reproducable with SuSE 10 and on Ubuntu 6.06. This is observed with java 6 and 7

I have two Frames F1, F2 and a child Dialog of F1 visible on screen. Calling toBack on the Dialog does not push the dialog to the back of F2. Dialog still stays above F2.

To reproduce:
1. Run the attached testcase which shows two Frames
2. Click on the button 'Show Dialog', which will show the Dialog
3. Click on 'Dialog Toback' button on the Dialog

If clicking the button does not move the Dialog to the back of F2, bug is reproduced.

EVALUATION This bug is caused by the current implementation of the Metacity WM. Above you may find a link to the Metacity bug that describes this behavior. Though it's unlikely to be fixed soon because Metacity DOES follow the conventions of ICCCM, however the resulting behavior does not satisfy the X specification (see comments in the Metacity bug.) Thus, this is obviously a Metacity problem, not a Java one. Other WMs are not affected by this issue. So, the bug is closed as 'not a defect'.

EVALUATION As the bug is easily reproduced with the provided native test, I filed the following bug against the Metacity window manager: http://bugzilla.gnome.org/show_bug.cgi?id=405269

EVALUATION This bug can be also easily reproduced on Solaris 10 with GNOME desktop. I have verified that XLowerWindow() is called for the dialog, but it still is above frame 2. I have also written a native test (attached to the change request) but the bug is not reproduced with it.