On Tue, 25 Nov 2025 17:26:36 GMT, Martin Fox <[email protected]> wrote:
> In the macOS glass code an owned window is referred to as a child window and > its owner is referred to as the parent. When a parent is iconified the glass > code "iconifies" its children which is to say it hides them. Under the right > circumstances the children may get ordered back to the front and made visible > almost immediately. > > Details are in the bug report but when a window is iconified it may trigger > the OS to notify every window that its NSScreen has changed (yes, this is > weird). This causes reorderChildWindows to be called on the newly iconified > parent and the process of re-ordering the child windows can cause hidden > windows to be made visible. For some reason the NSScreen strangeness only > happens if "System Settings > Desktop & Dock > Minimize windows into > application icon" is turned OFF. This is not the first time we've encountered > this, see [JDK-8353902](https://bugs.openjdk.org/browse/JDK-8353902) > > This PR fixes the problem in two ways. If reorderChildWindows is called on an > iconified window it does nothing. If one of the child windows is hidden it is > not re-ordered since that might make it visible. I was able to make a variant of the bug happen on macOS 26. I ran the OwnerIconify test program against jfx:master on a system with two monitors, minimized the main window (all children minimized), then unplugged one of the monitors. The two child windows were shown (unminized). I get the same behavior if I plug in a new monitor. With this patch the windows all stay minimized. ------------- PR Comment: https://git.openjdk.org/jfx/pull/1985#issuecomment-3583452759
