macOS will allow any window to enter fullscreen mode but won't expand the 
window's size if the resizable bit isn't set in the window's style mask. For 
undecorated stages the code has to set this bit before entering fullscreen and 
restore the old value after exiting fullscreen.

The old code was taking a pointer to an NSWindow and casting it to a pointer to 
an unrelated type (GlassWindow). It was also making an unnecessary check. 
windowWillEnterFullScreen stashes away the state of the resizable bit before 
setting it and windowDidExitFullScreen restores the old state. There's no need 
for setResizableForFullscreen to check anything, it just needs to do what it's 
told.

System tests for this case are underway as part of PR #1789.

You might have difficulty reproducing the bug in the master branch.  The old 
code was doing a bogus pointer cast and then dereferencing it to check a state 
flag so the code sometimes worked and sometimes didn't.

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

Commit messages:
 - Replaced deprecated style mask constants
 - Removed incorrect cast and unnecessary check

Changes: https://git.openjdk.org/jfx/pull/1799/files
  Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1799&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8353314
  Stats: 9 lines in 1 file changed: 1 ins; 3 del; 5 mod
  Patch: https://git.openjdk.org/jfx/pull/1799.diff
  Fetch: git fetch https://git.openjdk.org/jfx.git pull/1799/head:pull/1799

PR: https://git.openjdk.org/jfx/pull/1799

Reply via email to