> 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: Fixed typo, re-enabled maximized position test on macOS. ------------- Changes: - all: https://git.openjdk.org/jfx/pull/1797/files - new: https://git.openjdk.org/jfx/pull/1797/files/1e71ff3e..54cc8a3f Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=1797&range=01 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1797&range=00-01 Stats: 6 lines in 1 file changed: 0 ins; 3 del; 3 mod Patch: https://git.openjdk.org/jfx/pull/1797.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/1797/head:pull/1797 PR: https://git.openjdk.org/jfx/pull/1797