Found the problem thru this path: **WindowStage.java**
final void handleFocusDisabled() { if (activeWindows.isEmpty()) { return; } WindowStage window = activeWindows.get(activeWindows.size() - 1); window.setIconified(false); window.requestToFront(); window.requestFocus(); } **glass_window.cpp** void WindowContextBase::process_focus(GdkEventFocus* event) { ... if (jwindow) { if (!event->in || isEnabled()) { mainEnv->CallVoidMethod(jwindow, jWindowNotifyFocus, event->in ? com_sun_glass_events_WindowEvent_FOCUS_GAINED : com_sun_glass_events_WindowEvent_FOCUS_LOST); CHECK_JNI_EXCEPTION(mainEnv) } else { mainEnv->CallVoidMethod(jwindow, jWindowNotifyFocusDisabled); CHECK_JNI_EXCEPTION(mainEnv) } } } So `glass_window.cpp` was triggering `jWindowNotifyFocusDisabled` which triggered the java code on the Primary Stage (on the bug reproduce code). The docs states: /** * Enables or disables the window. * * A disabled window is unfocusable by definition. * Also, key or mouse events aren't generated for disabled windows. * * When a user tries to activate a disabled window, or the window gets * accidentally brought to the top of the stacking order, the window * generates the FOCUS_DISABLED window event. A Glass client should react * to this event and bring the currently active modal blocker of the * disabled window to top by calling blocker's minimize(false), toFront(), * and requestFocus() methods. It may also 'blink' the blocker window to * further attract user's attention. * ..... So I guess the C++ side is ok, java side on `handleFocusDisabled` looks fishy to me, but not sure about that. ------------- Commit messages: - Fix for JDK-8271054 - Merge branch 'openjdk:master' into master - Merge branch 'openjdk:master' into master - Merge pull request #18 from openjdk/master - Merge pull request #17 from openjdk/master - Merge pull request #16 from openjdk/master - Merge pull request #15 from openjdk/master - Merge pull request #14 from openjdk/master - Merge pull request #13 from openjdk/master - Merge pull request #12 from openjdk/master - ... and 8 more: https://git.openjdk.java.net/jfx/compare/ba61a173...3770f101 Changes: https://git.openjdk.java.net/jfx/pull/598/files Webrev: https://webrevs.openjdk.java.net/?repo=jfx&pr=598&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8271054 Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod Patch: https://git.openjdk.java.net/jfx/pull/598.diff Fetch: git fetch https://git.openjdk.java.net/jfx pull/598/head:pull/598 PR: https://git.openjdk.java.net/jfx/pull/598