RFR: 8354480: A Stage should allow simultaneous iconified and maximized states [v2]

Andy Goryachev angorya at openjdk.org
Mon Apr 14 15:13:15 UTC 2025


On Sun, 13 Apr 2025 18:01:08 GMT, Thiago Milczarek Sayao <tsayao at openjdk.org> wrote:

>> On some platforms (at least on Ubuntu 24.04 with GNOME and Windows 11), windows can remain maximized even when they are iconified (minimized). When the window is de-iconified (restored), it retains its maximized state.
>> 
>> The documentation in `Stage.java` regarding window states seems to align with this behavior. However, the code currently treats the `WindowEvent.RESTORE` event as both an unminimize (de-iconify) and an unmaximize.
>> 
>> Tests pass on Ubuntu 24.04 XWayland (with one unrelated screenCapture failure). But I would not rely on that since it needes specific tests.
>> 
>> This is not ready to integrate as it may break platform-specific code/behavior.
>
> Thiago Milczarek Sayao has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Missed one change

modules/javafx.graphics/src/main/java/com/sun/glass/events/WindowEvent.java line 43:

> 41:      * and {@link #UNMINIMIZE}.
> 42:      */
> 43:     @Deprecated

I am curious: what would be the benefit of deprecating, as opposed to redefining?
Is there a possibility of a mismatch between the java code and the native?

modules/javafx.graphics/src/main/java/com/sun/glass/events/WindowEvent.java line 76:

> 74:             case WindowEvent.FOCUS_DISABLED -> "FOCUS_DISABLED";
> 75:             case WindowEvent.FOCUS_UNGRAB -> "FOCUS_UNGRAB";
> 76:             default -> "UNKNOWN";

Just wanted to share, I usually do `"?" + eventType`, or in this case it might be `"UNKNOWN?" + eventType`.

-------------

PR Review Comment: https://git.openjdk.org/jfx/pull/1777#discussion_r2042350561
PR Review Comment: https://git.openjdk.org/jfx/pull/1777#discussion_r2042353363


More information about the openjfx-dev mailing list