From 47dc069104723f3d2e8d9ebdd700182e067163d0 Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Sat, 17 Dec 2011 21:41:30 +0100 Subject: GLDrawableFactory*.createOffscreenDrawable(): No implicit setRealized(true) @ creation GLDrawableFactory*.createOffscreenDrawable(): No implicit setRealized(true) @ creation, following deferred creation like onscreen drawables. This allows using offscreen drawables in classes like GLCanvas, where realization is deferred due to pending valid size. Only createGLPBuffer() realizes the offscreen pbuffer drawable immediatly to reduce the impact on user-code. GLDrawableFactoryImpl.createGLDrawable(): - Simplify OffscreenLayerSurface validation and check it first regardless of the chosenCaps to get a chance to use pbuffer. --- .../classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java') diff --git a/src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java b/src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java index 1bbeece6d..da7b535cb 100644 --- a/src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java +++ b/src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java @@ -49,12 +49,6 @@ public class X11PbufferGLXDrawable extends X11GLXDrawable { GLCapabilitiesChooser chooser, int width, int height */ super(factory, target, false); - - setRealized(true); - - if (DEBUG) { - System.err.println("Created pbuffer " + this); - } } protected void destroyImpl() { @@ -133,6 +127,10 @@ public class X11PbufferGLXDrawable extends X11GLXDrawable { GLX.glXQueryDrawable(display, pbuffer, GLX.GLX_HEIGHT, tmp, 0); int height = tmp[0]; ((SurfaceChangeable)ns).surfaceSizeChanged(width, height); + + if (DEBUG) { + System.err.println("Created pbuffer " + this); + } } public int getFloatingPointMode() { -- cgit v1.2.3