On Thu, 24 Apr 2025 16:05:11 GMT, Martin Fox <m...@openjdk.org> wrote:
>> Thiago Milczarek Sayao has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Reenable RestoreSceneSizeTest (JDK-8353556) > > tests/system/src/test/java/test/javafx/stage/SizingTest.java line 136: > >> 134: mode = EnumSource.Mode.INCLUDE, >> 135: names = {"DECORATED", "UNDECORATED", "TRANSPARENT"}) >> 136: void testMaximizeMaxSize(StageStyle stageStyle) { > > This test assumes that maximizing a window will ignore the max size settings. > That's not how it works on macOS and it would be a bear to try to implement > this. I think we should remove this test. I actually worked around by removing the constraints, maximize and restore back the constraints when unmaximized. Window does allow this. I would prefer to not allow as well and invert the test (or remove it). > tests/system/src/test/java/test/javafx/stage/SizingTest.java line 262: > >> 260: mode = EnumSource.Mode.INCLUDE, >> 261: names = {"DECORATED", "UNDECORATED", "TRANSPARENT", >> "UTILITY"}) >> 262: void testMinSize(StageStyle stageStyle) { > > Yikes! This test uncovers a long-standing problem and is failing on macOS and > Windows. In general glass will only send a resize notification if the > window's size actually changes. When you set the width and height here JavaFX > records the new values, sends them on to glass, and glass doesn't respond > because the window size doesn't change. The property values do not get > corrected to reflect the actual window size and the test fails. > > (I am not a fan of the JavaFX property-based API for setting window > attributes. Basically JavaFX records an attribute change as if it has already > happened and THEN sends it on to glass to be acted on. This creates endless > complications like this.) I had to work around this. It's a little worse, because if the Stage is fullscreen and we call setWitdth, for example, JavaFX will imediatelly set the width (but the Stage is fullscreen!). ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1789#discussion_r2059329764 PR Review Comment: https://git.openjdk.org/jfx/pull/1789#discussion_r2059327365