JDK-7017180 : Strange Window.toFront behaviour on Gnome Window Manager
  • Type: Bug
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 7
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris
  • CPU: generic
  • Submitted: 2011-02-04
  • Updated: 2011-04-06
  • Resolved: 2011-04-06
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
7Resolved
Related Reports
Duplicate :  
Relates :  
Relates :  
Description
Strange Window.toFront behaviour on Gnome Window Manager. I know that there is closed CR 6640082, but I've attached two tests. In one test toFront method doesn't work properly. In second it works fine. I think it would be good if in both cases toFrond will have similar behaviour.

Comments
EVALUATION I verified that xfce strictly follow to the changes of the focus ownership on every zorder change (while metacity don't): 1) FocusOwner == Gray 2) Gray.toBack(); Now FocusOwner == Red 3) Gray.toFront(); Now FocusOwner == Gray 4) Gray.toBack(); Now FocusOwner == Red And 1) FocusOwner == Gray 2) Red.toFront(); Now FocusOwner == Red 3) Red.toBack(); Now FocusOwner == Gray 4) Red.toFront(); Now FocusOwner == Red Closing this as a dup of 6472274. https://bugs.launchpad.net/metacity/+bug/416058 marked with FixReleased on 25.01.2011
06-04-2011

EVALUATION I'd say it is. There is a small but significant difference in the test flow. Here are two frames: Frame0 (red) and Frame1(gray) Sequential change and focus owner change for the passing scenrio would look like: 1) FocusOwner == Gray 2) Gray.toBack(); Now FocusOwner == Gray 3) Gray.toFront(); Now FocusOwner == Gray 4) Gray.toBack(); Now FocusOwner == Gray Everything's fine and on every stage one changes it's zorder. Same sequence for the failing scenrio would look like: 1) FocusOwner == Gray 2) Red.toFront(); Now FocusOwner == Red (and here is the problem - zorder didn't changed) 3) Red.toBack(); Now FocusOwner == Red 4) Red.toFront(); Now FocusOwner == Red I.e. a call on toplevel that don't own focus at the moment has no effect. Once I added af.requestFocus(); test stared to pass. I don't know what exactly happens on step 3) and 4) in last scenario and why it didn't execute toBack() properly given that Red now owns focus.
06-04-2011

EVALUATION Could be duplicate of 6472274, needs verification.
04-04-2011