aboutsummaryrefslogtreecommitdiffstats
path: root/src/jogl/native/macosx
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2009-10-05 15:26:28 -0700
committerSven Gothel <[email protected]>2009-10-05 15:26:28 -0700
commit62fb860ffc454fc00ed73f9b6da54bba34a6d64f (patch)
treecd753aa602beeb429902f1c2b8096e13861fdbb6 /src/jogl/native/macosx
parent906e3698f1493daab5cf196b893e65b11b2f0d12 (diff)
Fix On-/Offscreen and PBuffer.
Demos are working again: demos.jrefract.JRefract - X11, Win32, OSX -Dsun.java2d.opengl=true demos.jrefract.JRefract - X11, Win32 demos.readbuffer.Main [-GL2,-GL2ES1] -test 0 demos.es1.RedSquare - X11, Win32, OSX, EGL demos.readbuffer.Main [-GL2,-GL2ES1] -test [12] demos.es1.RedSquare - X11, Win32 - OSX not, because of the missing feature of attaching a read surface. - EGL not, because the emulation I used didn't support attaching a read surface. Emulation bug .. probably .. MacOSXWindowSystemInterface.m createContext(): - Verify if passed surface handle _is_ a view, now it could be a pbuffer etc .. handle as well. Cleanup GLDrawableImpl.setRealized(boolean realized) - Calls setRealizedImpl() (implementation) now, and only if new stated differs .. - setRealizedImpl() fixed for: MacOSXPbufferCGLDrawable: recreate/destroy WindowsOffscreenWGLDrawable: recreate/destroy WindowsPbufferWGLDrawable: no-recreate/destroy X11OffscreenGLXDrawable: recreate/destroy X11PbufferGLXDrawable: recreate/destroy WindowsWGLContext: - wglMakeContextCurrent(): uses isFunctionAvailable .. - create(): Uses WGL.MakeCurrent() and releases the created context, due to unavailable MakeContextCurrent extensions before updating the procaddress tables.
Diffstat (limited to 'src/jogl/native/macosx')
-rw-r--r--src/jogl/native/macosx/MacOSXWindowSystemInterface.m7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/jogl/native/macosx/MacOSXWindowSystemInterface.m b/src/jogl/native/macosx/MacOSXWindowSystemInterface.m
index 5405ad4ee..cbfea6d71 100644
--- a/src/jogl/native/macosx/MacOSXWindowSystemInterface.m
+++ b/src/jogl/native/macosx/MacOSXWindowSystemInterface.m
@@ -476,7 +476,12 @@ void* createContext(void* shareContext,
NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
- NSView *nsView = (NSView*)view;
+ NSView *nsView = NULL;
+ NSObject *nsObj = (NSObject*) view;
+
+ if( nsObj != NULL && [nsObj isKindOfClass:[NSView class]] ) {
+ nsView = (NSView*)nsObj;
+ }
if (nsView != NULL)
{