> When a window is visible the maximized, iconified, and fullscreen properties > are two-way streets; changes made in Java are sent on to the platform window > and changes in the platform window are sent back into Java. > > When a window is hidden these properties (and others, like location and > sizing information) are not sent on to the platform window until the window > is made visible. In other words, the properties don't reflect the actual > state of the window but the intended state after it's shown. > > There's a period when the window is transitioning from hidden to shown where > the core Stage code is using the stored properties to configure the platform > window and the platform window is simultaneously calling back in to update > the properties. This was causing the intended state to be wiped out before it > could be sent on to the platform window. > > The problem is specific to Mac because on that platform any change to the > size or location of a window can cause it to enter or leave the maximized > (zoomed) state. So just setting the location can cause the maximized flag to > be altered. > > The proposed solution is to copy the intended state bits to Stage local > variables to be used later in the configuration.
Martin Fox has updated the pull request incrementally with one additional commit since the last revision: Revert core changes. Fix Mac glass code so it reports maximized state correctly. ------------- Changes: - all: https://git.openjdk.org/jfx/pull/1258/files - new: https://git.openjdk.org/jfx/pull/1258/files/cc72d4ae..94fe8dc6 Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=1258&range=01 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1258&range=00-01 Stats: 31 lines in 3 files changed: 16 ins; 12 del; 3 mod Patch: https://git.openjdk.org/jfx/pull/1258.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/1258/head:pull/1258 PR: https://git.openjdk.org/jfx/pull/1258