=== modified file 'src/com/goldencode/p2j/ui/client/WindowManager.java' --- src/com/goldencode/p2j/ui/client/WindowManager.java 2016-02-25 06:13:23 +0000 +++ src/com/goldencode/p2j/ui/client/WindowManager.java 2016-03-15 20:04:43 +0000 @@ -68,7 +68,6 @@ import com.goldencode.p2j.ui.chui.ThinClient; import com.goldencode.p2j.ui.client.event.*; import com.goldencode.p2j.ui.client.gui.*; -import com.goldencode.p2j.ui.client.gui.OverlayWindow; import com.goldencode.p2j.ui.client.gui.driver.GuiDriver; import com.goldencode.p2j.ui.client.widget.*; import com.goldencode.p2j.util.Utils; @@ -324,6 +323,12 @@ throw new NullPointerException("The window can not be null!"); } + if (!window.isRealized()) + { + // window is derigistered + return; + } + // move window to top WorkArea wa = work.get(); synchronized (wa.windows) @@ -530,7 +535,7 @@ */ public static void setActiveWindow(TopLevelWindow window) { - // overlay window can not be cinsidered as active one + // overlay window can not be considered as active one if (window != null && window.isOverlay()) { return; === modified file 'src/com/goldencode/p2j/ui/client/widget/AbstractContainer.java' --- src/com/goldencode/p2j/ui/client/widget/AbstractContainer.java 2016-03-03 16:10:57 +0000 +++ src/com/goldencode/p2j/ui/client/widget/AbstractContainer.java 2016-03-15 19:58:46 +0000 @@ -1042,7 +1042,8 @@ { TopLevelWindow window = topLevelWindow(); - if (WindowManager.topLevelWindow() != window) + if (WindowManager.topLevelWindow() != window || + WindowManager.getActiveModalWindow() == window) { // activate the related window WindowManager.activateWindow(window);