<AWT Dev> [8] Review Request: 8027778 [macosx] Full screen not working properly on 7u45 with 10.7
Sergey Bylokhov
Sergey.Bylokhov at oracle.com
Tue Dec 10 16:46:40 PST 2013
Hello.
Please review the fix for jdk 8.
Some history of the bug:
- Initially we did not constrain size of the window and got JDK-7160609
- Then we try to use a union of the screens to constrain of the window
and got JDK-8015100.
- Then we start to use GL_MAX_TEXTURE_SIZE/2. But for some systems it
was too big JDK-8023159 OR too small JDK-8027778.
But on macosx 10.9 the windows are constrained automatically by the size
of the screen(Petr please confirm).
I make the fix as simple as possible and use max(SCREEN_SIZE,
GL_MAX_TEXTURE_SIZE/2<=8192), so we should behave like the native
application on 10.9
nativeGetMaxTextureSize was moved under the render lock, where other
related opengl data are initialized(see
CGLGraphicsConfig.getCGLConfigInfo()). To me it seems safe because it
works in similar way in jdk7 and CGLGraphicsConfig is recreated on the
each event related to the screen(new resolution, new video card, etc).
Also I adds updateMinimumSize to the displayChanged and notifyReshape,
to reapply a new constrain to the window.
Any suggestion are welcome.
Bugs which are covered by this fix:
https://bugs.openjdk.java.net/browse/JDK-8027778- after the fix the
maximum size is not less than the screen
https://bugs.openjdk.java.net/browse/JDK-8015100 - we use half of the
GL_MAX_TEXTURE_SIZE if supported by the system, and usually it is larger
than the screen
https://bugs.openjdk.java.net/browse/JDK-8010999 - the maximum possible
size of the window is 8192
Webrev can be found at: http://cr.openjdk.java.net/~serb/8027778/webrev.00
--
Best regards, Sergey.
More information about the awt-dev
mailing list