< prev index next >
src/java.desktop/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java
Print this page
@@ -1262,31 +1262,22 @@
}
return rootOwner;
}
private void orderAboveSiblings() {
- CPlatformWindow rootOwner = getRootOwner();
-
- // Do not order child windows of iconified owner.
- if (!rootOwner.isIconified()) {
- final WindowAccessor windowAccessor = AWTAccessor.getWindowAccessor();
- Window[] windows = windowAccessor.getOwnedWindows(rootOwner.target);
-
- // No need to order windows if it doesn't own other windows and hence return
- if (windows.length == 0) {
- return;
- }
-
// Recursively pop up the windows from the very bottom, (i.e. root owner) so that
// the windows are ordered above their nearest owner; ancestors of the window,
// which is going to become 'main window', are placed above their siblings.
- if (rootOwner.isVisible()) {
+ CPlatformWindow rootOwner = getRootOwner();
+ if (rootOwner.isVisible() && !rootOwner.isIconified() && !rootOwner.isActive()) {
rootOwner.execute(CWrapper.NSWindow::orderFront);
}
- // Order child windows.
- orderAboveSiblingsImpl(windows);
+ // Do not order child windows of iconified owner.
+ if (!rootOwner.isIconified()) {
+ final WindowAccessor windowAccessor = AWTAccessor.getWindowAccessor();
+ orderAboveSiblingsImpl(windowAccessor.getOwnedWindows(rootOwner.target));
}
}
private void orderAboveSiblingsImpl(Window[] windows) {
ArrayList<Window> childWindows = new ArrayList<Window>();
< prev index next >