<AWT Dev> One or many GraphicsConfiguration(s) per toplevel?
Anthony Petrov
anthony.petrov at oracle.com
Fri Mar 7 11:28:11 UTC 2014
Hi Xerxes,
Wow, what an old discussion thread you dug up! Yes, indeed, we've
applied a fix that now unifies the GCs of individual components when the
GC of their top-level window changes.
The issue that you're bringing up is worth investigating. I have filed a
bug to track this:
https://bugs.openjdk.java.net/browse/JDK-8036875
Thanks for the report!
--
best regards,
Anthony
On 3/7/2014 1:24 PM, Xerxes Rånby wrote:
> In 2009 Anthony asked:
>> The question is: is it really possible for one toplevel to contain
>> components having different GraphicsDevice's (and/or different
>> GraphicsConfiguration's)? Or may I assume that all and every descendant
>> components of a toplevel window use the same GC that the window uses
>> (and therefore the Container.checkGD() may safely be removed)?
> http://mail.openjdk.java.net/pipermail/awt-dev/2009-January/000509.html
> ...
> http://mail.openjdk.java.net/pipermail/awt-dev/2009-January/000519.html
>
> Yes when using Java3D and GraphicsConfigTemplate3D is possible and wanted for the Java3D Canvas3D
> to use a different GraphicsConfiguration compared to its parent components GraphicsConfiguration
> especially when using 3D Stereoscopy.
>
> The old awt-dev discussion ended with a behavioural change in Container when using 7u45 and later.
> JDK-6804747 : Ensure consistent graphicsConfig member across components hierarchy
> http://bugs.java.com/view_bug.do?bug_id=6804747
> http://hg.openjdk.java.net/jdk7u/jdk7u/jdk/rev/66d6db0a1de6
>
> This change caused Java3D Stereoscopy to stop working when using professional
> 3D equipment such as NVIDIA Quadro (FX) or ATI/ASUS FireGL, compatible monitors.
> The Stereo capable GraphicsConfiguration GC of the Canvas3D now gets replaced using
> Component.setGraphicsConfiguration() inside java.awt.Container.addImpl()
> by the non Stereo enabled GraphicsConfig of the parent window/frame.
> Regressions caused by JDK-6804747 is described here:
> http://stackoverflow.com/questions/21239229/stereo-problems-on-linux-using-java-7-how-to-change-the-gc-of-a-component-afte?rq=1
> http://forum.jogamp.org/Java3D-stereo-tp4029914.html - includes Java3D test code that expose the issue.
>
> Cheers
> Xerxes
>
More information about the awt-dev
mailing list