On Wed, 30 Apr 2025 23:34:06 GMT, Martin Fox <m...@openjdk.org> wrote:
>> On macOS the system animates the transition into and out of fullscreen and >> this animation runs asynchronously. JavaFX tries to make the setFullScreen >> call appear synchronous by running a nested event loop while the transition >> is going on. But this means that runLater runnables can fire during a call >> to setFullScreen. >> >> This can also occur during a call to Window.hide() if the window is in >> fullscreen mode. During the setView call glass tries to take the window out >> of fullscreen mode which fires up a nested event loop and, again, runLater >> runnables (like pulses) start firing. >> >> In this PR GlassRunnables that try to run during the fullscreen transition >> are instead placed in a deferral list. When the fullscreen event loop exits >> they are re-scheduled. > > Martin Fox has updated the pull request incrementally with one additional > commit since the last revision: > > Disabling testDemaximizedPosition (again). Seems to be failing on some test > machines. For what it's worth the failure of testDemaximizedPosition is due to old behavior captured in [JDK-8355990](https://bugs.openjdk.org/browse/JDK-8355990). During the maximize transition glass sends out a slew of position updates. This test can capture any one of these notifications and trigger the latch indicating that the transition is done. I've already put together a fix and will re-visit this test when I submit that PR. ------------- PR Comment: https://git.openjdk.org/jfx/pull/1797#issuecomment-2843943333