Hi Mike, Phil, Dmitry, Scott.
I have a question about our CALayer implementation. According to the
code below we use layer-backed NSView.
AWTView.m:
[self setWantsLayer: YES];
[self.layer addSublayer: (CALayer *)cglLayer];
But in the documentation for NSView.setWantsLayer: "When using
layer-backed views you should never interact directly with the layer"
So we use layer-backed NSView and add our CAOpenGLLayer to the backed
layer as sublayer.
Because of that we use NSView.drawRect and
CAOpenGLLayer.drawInCGLContext simultaneously, I guess this is incorrect.
Is this configuration supported by Apple?
Should we change our implementation to layer-hosting view or probably we
can use layer-backed view with appropriate NSView.makeBackingLayer()?
01.09.2011 13:11, dmitry.cherepa...@oracle.com wrote:
Changeset: c6eecbe2396f
Author: dcherepanov
Date: 2011-09-01 13:08 +0400
URL:
http://hg.openjdk.java.net/macosx-port/macosx-port/jdk/rev/c6eecbe2396f
Some cleanup in CAOpenGLLayer prototype (including extracting layer code into
CGLLayer.h|m and removing stale code)
! make/sun/lwawt/FILES_c_macosx.gmk
! make/sun/lwawt/FILES_c_macosx.gmk.all
! src/macosx/classes/sun/java2d/opengl/CGLGraphicsConfig.java
- src/macosx/classes/sun/java2d/opengl/CGLRenderQueue.java
! src/macosx/classes/sun/java2d/opengl/CGLSurfaceData.java
! src/macosx/classes/sun/lwawt/macosx/CPlatformView.java
! src/macosx/native/sun/awt/AWTView.h
! src/macosx/native/sun/awt/AWTView.m
! src/macosx/native/sun/awt/ThreadUtilities.m
! src/macosx/native/sun/java2d/opengl/CGLGraphicsConfig.m
+ src/macosx/native/sun/java2d/opengl/CGLLayer.h
+ src/macosx/native/sun/java2d/opengl/CGLLayer.m
! src/macosx/native/sun/java2d/opengl/CGLSurfaceData.m
! src/share/classes/sun/java2d/opengl/OGLRenderQueue.java
! src/share/classes/sun/java2d/pipe/BufferedContext.java
! src/share/native/sun/java2d/opengl/OGLSurfaceData.h
- test/experimental/layers/ButtonTest.java
--
Best regards, Sergey.