src/macosx/classes/sun/lwawt/macosx/CPlatformWindow.java

Print this page

        

@@ -818,10 +818,11 @@
         if (target.getModalExclusionType() == Dialog.ModalExclusionType.APPLICATION_EXCLUDE) {
             return;
         }
 
         nativeSetEnabled(getNSWindowPtr(), !blocked);
+        checkBlockingAndOrder();
     }
 
     public final void invalidateShadow(){
         nativeRevalidateNSWindowShadow(getNSWindowPtr());
     }

@@ -982,11 +983,11 @@
     private void updateFocusabilityForAutoRequestFocus(boolean isFocusable) {
         if (target.isAutoRequestFocus() || !isNativelyFocusableWindow()) return;
         setStyleBits(SHOULD_BECOME_KEY | SHOULD_BECOME_MAIN, isFocusable); // set both bits at once
     }
 
-    private boolean checkBlocking() {
+    private boolean checkBlockingAndOrder() {
         LWWindowPeer blocker = (peer == null)? null : peer.getBlocker();
         if (blocker == null) {
             return false;
         }
 

@@ -1038,11 +1039,11 @@
     // ----------------------------------------------------------------------
 
     private void windowDidBecomeMain() {
         assert CThreading.assertAppKit();
 
-        if (checkBlocking()) return;
+        if (checkBlockingAndOrder()) return;
         // If it's not blocked, make sure it's above its siblings
         orderAboveSiblings();
     }
 
     private void windowWillEnterFullScreen() {