aboutsummaryrefslogtreecommitdiffstats
path: root/src/classes/com/sun/opengl/impl/x11
Commit message (Collapse)AuthorAgeFilesLines
* - Removed StaticGLInfo usage.Sven Gothel2008-11-131-7/+15
| | | | | | | | | | | | | | | | | | | | | | | Function availability is checked by the dynamic ProcAddressTable, so it works as described/desired and removed around 30 kB of text. - Adding EGLExt to support EGLImage to share video buffers between another API (e.g. OpenMax) - EGL: Added platform extension query support - EGLClientBuffer is opaque long - GLXExt: Removed duplicated enumerates from GLX - GLContext: Promoted getPlatformExtensionsString() - GLProfile.setProfile<GL*>(void) changed order of setting the GL profile to: highest -> lowest: GL2 .. GL2ES12 .. GLES2 .. GLES1 git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1784 232f8b59-042b-4e1e-8c03-345bb8c30851
* X11 getPlatformExtensionsString shall use the toolkit lookingSven Gothel2008-11-071-2/+8
| | | | | | | optional, since it could be called from a locked state, e.g. setSwapInterval. Done. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1783 232f8b59-042b-4e1e-8c03-345bb8c30851
* Minor CVM/ES1 fixesSven Gothel2008-08-111-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1747 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed unnecessary GL2 dependencies from desktop window system code. Kenneth Russel2008-08-082-138/+0
| | | | | | | | | | | | Moved Linux-specific DRIHack into shared code so it could be called from the common code path in GLProfile which now loads the shared libraries. Temporarily ignored WGL_OML_sync_control and WGL_NV_gpu_affinity extensions to avoid dependencies on NIO classes (java.nio.LongBuffer) not in CDC/FP/JSR-239 NIO profile. Can now run JOGL with CVM on the desktop. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1743 232f8b59-042b-4e1e-8c03-345bb8c30851
* - Using new config feature: 'IgnoreExtendedInterfaceSymbols <java class ↵Sven Gothel2008-07-183-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | source file>' and get rid of manual 'Ignore' configs for common stuff in the base interfaces. - Add: GLUnsupportedException: - Using new config feature 'UnsupportedExceptionType GLUnsupportedException' - GLUnsupportedException is used for anything 'UnsupportedOperationException' - GLU: - GLU itself is no more abstract - GLU contains the tesselator implementation - name, return type, modifiers and arguments - createGLU(..) - operated by profile name now. - GLU itself will be used for GLES2 - Cleanup: - gluegen/GL configs .. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1725 232f8b59-042b-4e1e-8c03-345bb8c30851
* GL Unification 2nd round.Sven Gothel2008-07-041-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Terminology: ARB Extensions: "GL2", "ARB", "OES", "OML" Vendor Extensions: "EXT", "NV", "ATI", "SGI", "SGIS", "SGIX", "HP", "IBM", "WIN" Pass-1 Unify ARB extensions with the same value Pass-2 Unify vendor extensions, if exist as an ARB extension with the same value. Pass-3 Emit Done: - Unification of GL enumerates - Unification of GL functions - dynamic extension lookup - .. TODO: - Break down GL.java: GL + GL2ES1ES2 (for future GL3, etc) - Add a GL2 small implementation, to only support the GL2ES2 subset, 'GL2SubES2' .. +++ - Fixed X11 build breakage of 'jawt' linkage. - Fixed NEWT native code mouse- and keyevent id's, missed sync while moving them from the bitfield notation. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1708 232f8b59-042b-4e1e-8c03-345bb8c30851
* GL Unification 1st round.Sven Gothel2008-07-032-8/+8
| | | | | | | | | | | | | | | | | | Terminology: ARB Extensions: "GL2", "ARB", "OES", "OML" Vendor Extensions: "EXT", "NV", "ATI", "SGI", "SGIS", "SGIX", "HP", "IBM", "WIN" Pass-1 Unify ARB extensions with the same value Pass-2 Unify vendor extensions, if exist as an ARB extension with the same value. Pass-3 Emit TODO: - Break down GL.java enumerations: GL + GL2ES (for future GL3) - Same for function calls .. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1703 232f8b59-042b-4e1e-8c03-345bb8c30851
* 3rd round cdcfp - compile clean.Sven Gothel2008-06-287-24/+8
| | | | | | | | | | | | | | | | | | | | | | | | Re-adding cdcfp: com/sun/opengl/impl/glu/mipmap/* com/sun/opengl/impl/GLPbufferImpl.java Using 'BufferUtil.nativeOrder(ByteBuffer)' to set up the native byte order. 'BufferUtil.nativeOrder' is now public. GLDrawableFactory: - removed 'hardcoded' awt attribute. Cleanup NEWT's AWT wrapping implementation. - NativeWindowFactory incooperates with the wrapping property. Bugs on X11/NEWT/AWT: - no events - deadlock at shutdown - deadlock if EGLDrawable with AWT get's locked git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1700 232f8b59-042b-4e1e-8c03-345bb8c30851
* Mac OS X port of new JOGL and Newt. Currently leverages the AWT; willKenneth Russel2008-06-271-0/+1
| | | | | | | | | | | | | | | | re-host Newt on lower level code when a port to an AWT-less Mac OS X-based mobile device is done. Added support to NativeWindow and Newt for wrapping a Java-based window from a toolkit like the AWT, and added appropriate code to the GLDrawableFactory implementations to recognize and handle these NativeWindows. Fixed naming of native method for JAWT_DrawingSurfaceInfo.platformInfo0(). Fixed linker definition on Mac and cleaned up Windows variants. Fixed intptr_t definitions in ES1 and ES2 native code. Added workaround for GLU type reference in com.sun.opengl.util.texture.Texture. Fixed bugs in Newt event dispatching. Tested with RedSquare demo on Mac OS X. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1698 232f8b59-042b-4e1e-8c03-345bb8c30851
* Unifying NativeWindow's getWindowHandle() and getSurfaceHandle() usage for ↵Sven Gothel2008-06-265-17/+17
| | | | | | | | | | all platforms. On platform's where no distinction of window and surface handle exists, e.g. X11, the window handle is naturally returned by the default 'getSurfaceHandle()' implementation. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1696 232f8b59-042b-4e1e-8c03-345bb8c30851
* removing relocated filesSven Gothel2008-06-262-235/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1690 232f8b59-042b-4e1e-8c03-345bb8c30851
* Auto GL profile selection working (GLES1 and GL2 (X11))Sven Gothel2008-06-251-2/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1685 232f8b59-042b-4e1e-8c03-345bb8c30851
* Native Compilation: Partitioning and X11 cleanSven Gothel2008-06-252-2/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1680 232f8b59-042b-4e1e-8c03-345bb8c30851
* JAWT package cleanup ..Sven Gothel2008-06-241-4/+4
| | | | | | | re adding accidently removed files git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1675 232f8b59-042b-4e1e-8c03-345bb8c30851
* finishing 2nd refactoringSven Gothel2008-06-2113-2669/+0
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1671 232f8b59-042b-4e1e-8c03-345bb8c30851
* 2nd big refactoring.Sven Gothel2008-06-2114-33/+2571
| | | | | | | | | | | | | | | | | | | | | | Goals are orthogonal components for: - OS Windowing system - NEWT, X11, Windows, MacOsX - GL Windowing GLUE - EGL, GLX, WGL, CGL - GL profiles - core and util packages - generate all Java components from any platform All above goals are achieved. TODO: - Native compilation fix and test - Check/Fix Win32, MacOSX and the mobile devices - .. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1665 232f8b59-042b-4e1e-8c03-345bb8c30851
* Refactoring JOGL to partition core windowing, AWT, GL, ES1 and ES2 .. WIPSven Gothel2008-06-015-244/+359
| | | | | | | | Compile Clean: X11, noAWT, ES1, no *.impl.x11/win/macosx See jogl/make/build.xml for new build properties. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1654 232f8b59-042b-4e1e-8c03-345bb8c30851
* Filled out EGLContext, EGLDrawable, and EGLDrawableFactory Kenneth Russel2008-05-281-1/+2
| | | | | | | | | | | | | | | implementations on top of autogenerated EGL binding. Added GLDrawableFactory.initialize(String) taking the profile name (PROFILE_GL_20, PROFILE_GLES1, and PROFILE_GLES2 defined in GLDrawableFactory) to bootstrap the system and allow run-time selection of the window system binding. Modified eglplatform.h to extend EGLNativeDisplayType to pointer size. Changed egl.cfg to change most EGL types to opaque longs. Still missing pieces include the function pointer lookup and autogeneration of the EGL binding in all situations. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1643 232f8b59-042b-4e1e-8c03-345bb8c30851
* Incorporated fix from Justin Couch about using the default screen forKenneth Russel2007-07-241-1/+1
| | | | | | | the current display for pbuffer rendering rather than screen "0" git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1313 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added workaround for running in headless mode while still retainingKenneth Russel2007-07-241-5/+22
| | | | | | | | | pbuffer support and incorporated suggestion from Justin Couch for working around Mesa pbuffer bug where GLX_STEREO specification (even to "false") would cause glXChooseFBConfig to fail git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1312 232f8b59-042b-4e1e-8c03-345bb8c30851
* Re-fixed Issue 226: JOGL seg faulting on Solaris AMD64Kenneth Russel2007-04-211-17/+1
| | | | | | | | | | | The autogenerated GLX_JNI.c was not receiving a prototype for glXGetProcAddressARB and so was receiving the implicit one returning an int, which is obviously wrong on 64-bit architectures. Re-fixed this bug by providing a prototype; removed the workaround in X11GLDrawableFactory. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1211 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 226: JOGL seg faulting on Solaris AMD64Kenneth Russel2007-04-201-6/+6
| | | | | | | | | | | | The implementation of glXGetProcAddressARB on Solaris/AMD64 had a similar problem to that seen on Linux/AMD64 distributions: internally the return value is being cast to a 32-bit value and then sign-extended back to 64 bits, causing the high half of its function pointer return values to be lost. Worked around by using dlsym() for lookup on this OS as well as on Linux/AMD64. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1210 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 262: DRIHack problems with ATI and possibly other driversKenneth Russel2007-01-211-7/+2
| | | | | | | | | | | Added support to GlueGen's NativeLibrary class for relative library path names which do not require expansion; for example, "libGL.so.1". Changed the DRIHack to first attempt to open libGL.so.1 instead of "GL", which expanded to "libGL.so". For some reason, this causes ATI's drivers to be picked up properly. Tested with various JOGL demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1093 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 260: "GLException: Surface already locked" after failed makeCurrent Kenneth Russel2007-01-171-4/+7
| | | | | | | | | Added checking for thrown run-time exceptions to on-screen GLContext makeCurrent() implementations on all three major supported platforms; now unlocks the underlying GLDrawable if an exception is thrown. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1088 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added -Djogl.drihack.disable for manual disabling of DRI hackKenneth Russel2007-01-111-0/+5
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1080 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 259: need a copy context Kenneth Russel2007-01-071-0/+21
| | | | | | | | | | Added and specified GLContext.copy() and supplied implementations on Windows, X11 and Mac OS X platforms. New code is untested at this time. May need to make subsequent changes on X11 and Mac platforms where new code has not been compiled yet. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1075 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed NullPointerException in new cached GLCapabilities code on X11Kenneth Russel2006-12-191-2/+4
| | | | | | | platforms pointed out by bleb on javagaming.org forums git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@1028 232f8b59-042b-4e1e-8c03-345bb8c30851
* Removed native code for DRIHack and replaced it with code using theKenneth Russel2006-11-241-23/+16
| | | | | | | | | | | | | | | | | | | | | GlueGen runtime library (specifically the NativeLibrary class). Updated the build.xml, in particular the dist targets, to no longer build or copy this native library. Updated the NativeLibrary class to allow specification of the full path to the library. Removed the GlueGen runtime classes from jogl.jar; these are now expected to reside in gluegen-rt.jar and it is expected that developers will have this on their CLASSPATH. Updated the dist target to include the gluegen-rt native library and jar file. Updated the JOGLAppletLauncher to download and unpack the gluegen-rt-natives jar as well as the jogl-natives jar. Updated the HowToBuild, user guide, and JOGLAppletLauncher documentation for this restructuring. Fixed bug in gluegen-cpptasks.xml in detection of Solaris/SPARCv9 and refactored targets further. Tested on Solaris/x86 so far; further testing and debugging of the nightly builds and applet launcher, and update of the JOGL applet test, to follow. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@993 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 213: Expose GLCaps from GLDrawable Kenneth Russel2006-11-193-1/+170
| | | | | | | | | | | | | | | | | | | Added getChosenGLCapabilities() to the GLDrawable interface. Implemented on Windows, Unix and Mac OS X platforms with various techniques. Attempts to provide correct answers in all cases, even when the GLCapabilitiesChooser mechanism is not supported. Required addition of new platform-specific Java code in most cases to either re-convert existing PIXELFORMATDESCRIPTORS / XVisualInfos, or to query the pixel format or visual chosen for drawables like pbuffers for which the chooser mechanism is not (yet) implemented. Tested on Windows, Solaris/x86, and Mac OS X with on-screen, off-screen and pbuffer drawables. (Full support for the Java2D/JOGL bridge is not yet in place; the answer returned from the GLJPanel in this case is currently the default GLCapabilities, and it is likely that "external" GLDrawables will return null.) git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@989 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 242: Unable to select single-buffered visualKenneth Russel2006-08-141-3/+16
| | | | | | | | Fixed GLX_DOUBLEBUFFER and GLX_STEREO specifications for both on-screen and pbuffer visuals as per suggestion. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@885 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed crash triggered by Java 3D's JoglPipeline in off-screen Kenneth Russel2006-08-111-0/+4
| | | | | | | | | | | rendering on X11 platforms by watching for destruction of the pbuffer out from under an application-created context; could do better by explicitly destroying all application-created contexts in the shared code for both the GLCanvas and GLPbufferImpl (and probably the GLJPanel too) git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@881 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed build breakage on X11 platforms after introduction ofKenneth Russel2006-08-021-1/+1
| | | | | | | com.sun.gluegen.runtime.NativeLibLoader class git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@872 232f8b59-042b-4e1e-8c03-345bb8c30851
* Revised Java2D/JOGL bridge to support new share context argument toKenneth Russel2006-08-011-1/+1
| | | | | | | | | | CGLSurfaceData.createOGLContextOnSurface(Graphics, long). Testing indicates that sharing of textures, etc. between pbuffers and the context created on the Java2D back buffer is no longer functioning, however. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@871 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added code to support new entry points inKenneth Russel2006-07-101-0/+10
| | | | | | | | sun.java2d.opengl.CGLSurfaceData added by gziemski to enable the Java2D/JOGL bridge on Mac OS X. Currently untested. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@838 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed Issue 224: External context dosen't work with GLCanvas Kenneth Russel2006-05-281-0/+18
| | | | | | | | Added short-circuiting of logic to prevent the current GLContext from being released due to makeCurrent() of an external GLContext. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@784 232f8b59-042b-4e1e-8c03-345bb8c30851
* Preliminary fix forKenneth Russel2006-05-281-3/+26
| | | | | | | | | | | | Issue 216: Cannot create GLCanvas on non-default GraphicsDevice Made JOGL Xinerama-aware; now uses screen 0 rather than the screen reported from the AWT GraphicsDevice when Xinerama is enabled. So far only compiled and tested on non-Xinerama configuration on Linux; more testing needed on Xinerama setups and on Solaris. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@782 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed apparent bug pointed out by user EdwinOlson on jogl forum where Kenneth Russel2006-04-251-0/+1
| | | | | | | it seems the pbuffer drawable wasn't being reset to 0 on X11 platforms git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@738 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added workaround for apparent problem with ATI's proprietary driversKenneth Russel2006-04-032-0/+23
| | | | | | | | | where GL calls seem to result in GLX tokens being sent even for direct contexts, necessitating disabling of optimized on-screen context handling git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@701 232f8b59-042b-4e1e-8c03-345bb8c30851
* Made internal methods which fetch the platform-dependent context outKenneth Russel2006-04-021-1/+1
| | | | | | | | of the GLContext implementations public instead of protected for easier interoperability with C libraries git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@699 232f8b59-042b-4e1e-8c03-345bb8c30851
* Replaced absolute path to libGL.so.1 with relative path to presumablyKenneth Russel2006-04-021-1/+17
| | | | | | | | fix problems with ATI's fglrx drivers, which use a libGL.so.1.2 placed in a nonstandard location git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@698 232f8b59-042b-4e1e-8c03-345bb8c30851
* Forced enabling of DRI hack on all Linux distributionsKenneth Russel2006-04-011-1/+4
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@696 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed bugs in implementation of -Djogl.GLContext.noopt flagKenneth Russel2006-03-261-5/+5
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@685 232f8b59-042b-4e1e-8c03-345bb8c30851
* Added fallback path in GLContext optimization code to be able toKenneth Russel2006-03-191-1/+22
| | | | | | | | | | | | disable behavior of leaving last context current on OpenGL worker thread. Currently can be manually disabled with -Djogl.GLContext.noopt. Added explicit test on X11 platforms of whether the onscreen context created is direct or not, and to disable context optimization if not, to automatically solve problems when running with indirect contexts typically from Mesa. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@668 232f8b59-042b-4e1e-8c03-345bb8c30851
* Dummy putback to fix previous incorrect checkin comment: Kenneth Russel2006-03-081-1/+1
| | | | | | | | Augmented DRIHack to look for /usr/X11R6/lib/modules/dri as well as /usr/lib/dri when determining whether to enable DRI hack. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@656 232f8b59-042b-4e1e-8c03-345bb8c30851
* Restructured how GLObjectTracker destroys tracked objects during Kenneth Russel2006-03-081-3/+10
| | | | | | | | | | | | | | | | | | context destruction. Now, in addition to tracking sharing between contexts requested by the user, also tracks the behind-the-scenes sharing going on with e.g. Java2D. Makes determination of whether objects can be immediately destroyed by checking current context and seeing whether it shares the same deleted object pool as the one being destroyed. If objects can not be destroyed immediately, their destruction is deferred until the next makeCurrent of a context sharing objects with the one currently being destroyed (if one exists -- the case of this being the last context actually referencing the objects is handled by the OpenGL drivers). This fixes the resizing problems seen when -Dsun.java2d.opengl.fobject=true is specified along with -Dsun.java2d.opengl=true in Mustang. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@655 232f8b59-042b-4e1e-8c03-345bb8c30851
* Use try/finally in X11GLContext.destroyImpl() to avoid any potentialKenneth Russel2006-03-061-14/+17
| | | | | | | problems in leaving AWT toolkit locked git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@650 232f8b59-042b-4e1e-8c03-345bb8c30851
* Attempted fix for Issue 206: glTexImage2D fails on external context Kenneth Russel2006-02-231-0/+1
| | | | | | | | | Apparently failed to set mostRecentDisplay for X11ExternalGLContexts. Hard to believe this could have been broken for this long, though. No test case, therefore "attempted fix". git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@633 232f8b59-042b-4e1e-8c03-345bb8c30851
* Changed locking protocol for on-screen surfaces to only use the JAWT's Kenneth Russel2006-02-204-37/+41
| | | | | | | | | | | | | | | | | | | | | DrawingSurface locking primitives during the makeCurrent operation. While in theory the JAWT should be used for locking for the entire duration of the makeCurrent/release pair, in practice because OpenGL is orthogonal to the window system this is not really necessary, at least if higher-level locking primitives are used to make sure the window is not torn down out from under the library while OpenGL rendering is being performed. The OpenGL-related work done in GLCanvas.addNotify() and removeNotify() handles this. These changes enable simultaneous multi-head rendering on X11 systems with one OpenGL context per thread. Changed GLContext.destroy() to acquire the context's lock during the destroyImpl operation for correctness in the new protocol. Changed several Mac OS X native code entry points to not take an unnecessary NSView* argument. Tested with several demos on all platforms to stress creation and destruction of multiple kinds of OpenGL contexts. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@624 232f8b59-042b-4e1e-8c03-345bb8c30851
* Renamed "offscreen" capability bits in GLCapabilities to "pbuffer" Kenneth Russel2006-02-162-6/+6
| | | | | | | | capability bits to be more explicit about how they are to be used; no objections from JSR-231 expert group git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@616 232f8b59-042b-4e1e-8c03-345bb8c30851
* Fixed problems with lack of hardware acceleration on LinuxKenneth Russel2006-02-162-0/+114
| | | | | | | | | | | distributions using DRI drivers. Hacked around limitations of the current DRI implementation by manually dlopen'ing libGL.so.1; avoids changing glue code generation for core OpenGL 1.1 routines which do not otherwise need to be called through function pointers on any platform. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@614 232f8b59-042b-4e1e-8c03-345bb8c30851