The Jenkins Controller is preparing for shutdown. No new builds can be started.
The file was modified make/build-jogl.xml (diff)
Commit
4a0a5d69ffcb7592b092991ddb3761653c389ce6
by Sven Gothel NEWT WindowImpl.runOnEDTIfAvail(..): Run task from current thread if owning the windowLock. Avoiding deadlock when cmds issued from within locked code path. This allows e.g. GLEventListener::display(..) { .. glWindow.setSize(100 , 100); .. } The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff)
Commit
a06e40cce89615eb8c4b080842997c9c3ad1130b
by Sven Gothel NativeSurface Cleanup (API Change) - Adapt to GlueGen Lock cleanup commit: 834b9e530e652b7ff7c5e222720bce3ad2b11c5f - adapt to GlueGen Lock cleanup - remove isSurfaceLocked(), use 'null != getSurfaceLockOwner()' instead Misc: - remove unused priv./impl. methods - add @Override The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeSurface.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableImpl.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/ProxySurface.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/WrappedSurface.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeWindow.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/AnimatorBase.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java (diff) The file was modified src/newt/classes/com/jogamp/newt/Window.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PixmapGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXExternalCGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXOnscreenCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11OnscreenGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsDummyWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLPbufferDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsOnscreenWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLOnscreenDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXPbufferCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11DummyGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PixmapGLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLPbufferContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXOnscreenCGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXPbufferCGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLOnscreenContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLContext.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLExternalContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11OnscreenGLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsOnscreenWGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXOffscreenCGLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLContext.java (diff)
Commit
914b522af26b6d779dc931bf4303be3c7e898eff
by Sven Gothel Capabilities cleanup: make most get*() final, impl. Comparable to CapabilitiesImmutable, Misc .. - Comparable<CapabilitiesImmutable> to CapabilitiesImmutable: "interface CapabilitiesImmutable extends VisualIDHolder, WriteCloneable" -> "interface CapabilitiesImmutable extends VisualIDHolder, WriteCloneable, Comparable<CapabilitiesImmutable>" - CapabilitiesImmutable and GLCapabilitiesImmutable get-methods final (most) - GLCapabilitiesImmutable.compareTo: add doubleBuffered (between stereo and samples) Misc: - Add @Override - remove trailing whitespace, The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WGLGLCapabilities.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/X11Capabilities.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/Capabilities.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilities.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLCapabilities.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGLCapabilities.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/CapabilitiesImmutable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLPbuffer.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXOnscreenCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsOnscreenWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PixmapGLXDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsDummyWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11OnscreenGLXDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/AWTGLAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXOffscreenCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11DummyGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
Commit
1a91ec5c8b6fd9d9db7bc115569c369fe7b38e9b
by Sven Gothel SWT GLCanvas: Fix destroy(), Remove local concurrency hack & out-of-process locking ; Revise threading code; Proper name for SWT unit tests. SWT GLCanvas: - Fix destroy() drawable.setRealized(false); is being called within dispose() method - Remove local concurrency hack [MT-0] The hack: 'final GLContext ctx = getContext(); a = null != ctx ? ctx.something() : 0;' is thread safe locally, however, w/o covering the hole use case of the caller it makes no sense to add thread safe code here - would be only an illusion. In case any of the methods are called outside of a locked state extra care should be added. Maybe we shall expose locking facilities to the user. However, since the user shall stick to the GLEventListener model while utilizing GLAutoDrawable implementations, she is safe due to the implicit locked state. - Removing out-of-process locking [MT-1] Claiming the recursive lock in the dispose/display/.. methods and _then_ issuing a complex off-thread GL task could lead to deadlock. The GL task could involve calling GLEventListener methods, which itself could try to manipulate the GLCanvas -> deadlock. Similar to [MT-0] we may need to either find a proper locking mechanism or simply ignore it and reduce functionality. TBH .. the number of scenarious of the mentioned deadlock are very limited and exotic. - Revise threading code [MT-2] Besides the other MT-* remarks, the logic whether to spawn off the GL task and determination which thread to use is too complex and redundant. (See isRenderThread(), runInGLThread() and runInDesignatedGLThread()) - Proper name for SWT unit tests. Reflect the semantics. The file was modified make/scripts/tests.sh (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAWT01GLn.java The file was added src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTJOGLGLCanvas01GLn.java The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor03AWTGLn.java The file was removed src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTJOGLGLCanvas01GLnAWT.java The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff)
Commit
3334a924309a9361a448d69bc707d4cce416b430
by Sven Gothel NEWT GLWindow multithreading fix and annotations (see commit bc7503c77892a9e14b10e8b8e9ce48b148c6fa4c). NEWT GLWindow multithreading fix: - Add required locking of display(), otherwise a drawable/context destruction of another threads could lead to [still] use asynced data. The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite01AWT.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite02AWT.java The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite02NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParentingOffscreenLayer01GLCanvasAWT.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableHelper.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11OnscreenGLXDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff)
Commit
d10c7916a2444b6cb1cf45be3ccb3d6e91a2f1b4
by Sven Gothel NativeSurface.unlockSurface(): Change fail-fast policy to fail safe tolerant - This policy allows more simple destruction handling w/o validating on the top level. - Hence 'unlockSurface()' shall not throw any exception. - 'lockSurface()' keeps unchanges, clarified w/ explicit 'throws' declaration, ie will fail-fast. The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeSurface.java (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/macosx/MacWindow.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/ProxySurface.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/windows/WindowsWindow.java (diff)
Commit
0d7c3ed619044723cf561df424eac9992e5281c7
by Sven Gothel GLContextImpl/GLDrawableImpl: More fail-safe, cleanup, mark some methods final GLContextImpl: Cleanup - release(): simplify the conditions - destroy(): allow locked twice before (destroy case) GLDrawableImpl: - fail safe: swapBuffers - final methods: getFactoryImpl, toHexString, getGLProfile, getRequestedGLCapabilities, getFactory, isRealized, lockSurface, unlockSurface The file was modified src/jogl/classes/jogamp/opengl/GLDrawableImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff)
Commit
c50fca1b5df9ec3b76fada4dd5dd307bdece531a
by Sven Gothel JAWTUtil/MacOSXWindowSystemInterface-pbuffer: Cleanup / More DEBUG info JAWTUtil.getJAWT(..): - better local var names - one time init - add DEBUG trace JAWTUtil.<init>: - add offscreenLayer info MacOSXWindowSystemInterface-pbuffer.m: - remove warning: access of protected vars from outside class - better local var names - more DEBUG info (pbuffer texture) The file was modified src/nativewindow/classes/jogamp/nativewindow/jawt/JAWTUtil.java (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface-pbuffer.m (diff)
Commit
9a7c8896fe38ebcd42ed5238b09a7a36d46db9dc
by Sven Gothel Fix Bug #589 (JAWT Offscreen-Layer resize) and Offscreen-Layer setSwapInterval() deadlock; Reuse JAWT instance; Cleanup - Fixes - OSXUtil.CreateCALayer*(..): Pass layer target size (if known). This fixes Bug #589 - MacOSXWindowSystemInterface-pbuffer.m: - ALL: displayLink NULL check - setSwapInterval(..): lock only for variable setting, could deadlock when start/stop CVDisplayLink - JAWTWindow.destroy(): use 'surfaceLock' instead of 'synchronized' - Cleanup / Performance - JAWTWindow.lockSurface(): Reuse JAWT instance - MacOSXJAWTWindow: AttachJAWTSurfaceLayer0(..) -> SetJAWTRootSurfaceLayer0(..) Reflects semantic better. - DEBUG - JAWTWindow.updateBounds(..) notify of bounds change The file was modified src/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface-pbuffer.m (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/nativewindow/native/macosx/OSXmisc.m (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/awt/TestGearsES2AWT.java (diff)
Commit
5c83989b8bb8e8f9cbc25f09e6a6fe5847e6b94c
by Sven Gothel Fix Bug 597 : XDisplayString(0 ) -> SIGSEGV; Handle n/a DISPLAY It works now as follows: Note: Remote connection tested using ssh to localhost or an actual remote machine. Test w/ proper X11 authentication, i.e. DISPLAY and xauth: > cd projects/JOGL/jogl-bugs/597-headless/ > echo $DISPLAY localhost:10.0 > xclock 'works' T1.1 OK> java plop jogamp.opengl.x11.glx.X11GLXDrawableFactory@f581593 T1.2 OK> java -Djava.awt.headless=true plop jogamp.opengl.x11.glx.X11GLXDrawableFactory@6f34a7d8 +++ Test _without_ proper X11 authentication, i.e. DISPLAY and xauth: > xclock No protocol specified No protocol specified Error: Can't open display: :0.0 T2.1 OK> java plop No protocol specified No protocol specified Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable. (Stack trace from: GLProfile.initProfilesForDefaultDevices(..) -> NativeWindowFactory.initSingleton(..) -> JAWTUtil.<clinit>-> sun.awt.X11.XToolkit.<clinit> -> sun.awt.X11GraphicsEnvironment.initDisplay(Native Method) T2.2 OK> java -Djava.awt.headless=true plop No protocol specified No protocol specified ... jogamp.opengl.x11.glx.X11GLXDrawableFactory@394a8cd1 The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/X11Util.java (diff)
Commit
08e3f9bff494a5366781328734e83ae0202696fa
by Sven Gothel Test case cleanup - Gears w/ 640x480 size and proper aspect ratio frustum - query type of drawable.getNativeSurface() instead of auto-drawable itself - RedSquareES2 allow setting no-rotation and aspect-ratio for frustum - TestInitConcurrentNEWT: Don't use vsync The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestGearsES2NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/GearsES1.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/awt/TestGearsES2AWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/newt/TestGearsNewtAWTWrapper.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/util/NEWTGLContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGearsGLJPanelAWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGearsGLJPanelAWTBug450.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestInitConcurrentNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/newt/TestGearsNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/newt/TestGearsES1NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGearsAWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/Gears.java (diff)
Commit
eed8508ae1132e5f45f788e9cb3f3d5a1050ac70
by Sven Gothel GLAutoDrawable: Refine API doc; Use new abstract impl. GLAutoDrawableBase (GLWindow, ..); Add new GLAutoDrawableDelegate. - Refine API doc - 'void setContext(GLContext)' -> 'GLContext setContext(GLContext)' - Add note to createContext(GLContext) override -Use new abstract impl. GLAutoDrawableBase, used by: - GLWindow - GLAutoDrawableDelegate - GLPbufferImpl - Add new GLAutoDrawableDelegate incl. unit test The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLAutoDrawableDelegateNEWT.java The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff) The file was added src/jogl/classes/javax/media/opengl/GLAutoDrawableDelegate.java The file was modified src/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was added src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff)
Commit
9b35c57425b0a5f6b789b9b43a62a8b64be51d86
by Sven Gothel GLAutoDrawable* refinement of abstraction / generalization - API Change! - GLAutoDrawable (compat change - recompile): - 'void invoke(boolean wait, GLRunnable glRunnable)' -> 'boolean invoke(boolean wait, GLRunnable glRunnable)' Allows notifying caller whether the task has been executed or at least enqueued. - GLAutoDrawable add 'GLEventListener removeGLEventListener(int index)' - This allow one to remove a specific GLEventListener and reusing it (return value). - GLDrawableImpl remove 'destroy()' to favor 'setRealized(false)' - Using more common code of GLAutoDrawableBase, i.e. GLPbufferImpl can use defaultDestroyOp(). - Removes redundancy of methods - GLAutoDrawableBase/Delegate - better 'default' names to emphasize it's purpose, adding API doc - includes more generic functionality - defaultWindowDestroyNotify() - defaultDestroyOp() - TestGLAutoDrawableDelegateNEWT demonstrates a simple example w/ all window events handled. - Fix TestParenting01cSwingAWT's threading use (gl disturbance thread) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PixmapGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableHelper.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXPbufferCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsDummyWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLPbufferDrawable.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableImpl.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11DummyGLXDrawable.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting02NEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLRunnableTask.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLAutoDrawableDelegateNEWT.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawableDelegate.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01cSwingAWT.java (diff)
Commit
fd06292d4a208cbd613f4bdce7cae12e075e70ec
by Sven Gothel NativeWindow/Newt X11ErrorHandler enhancement / unification - don't throw exceptions. Handles also XAWT BadMatch X_SetInputFocus. X11ErrorHandler code now dumps proper information about the opcode and error message and the running Java thread. Having propery "nativewindow.debug.X11Util.XErrorStackDump" or "nativewindow.debug=all' set, a stack trace is dumped. Since the X11ErrorHandler may catch an XAWT error: BadMatch X_SetInputFocus, we cannot throw an exception and better keep running. The file was modified src/newt/native/NewtCommon.c (diff) The file was added src/nativewindow/native/x11/Xmisc.h The file was modified src/newt/classes/jogamp/newt/driver/x11/X11Window.java (diff) The file was modified src/nativewindow/native/NativewindowCommon.h (diff) The file was modified src/newt/native/NewtCommon.h (diff) The file was modified src/newt/native/X11Common.h (diff) The file was modified src/newt/native/X11Window.c (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/X11Util.java (diff) The file was modified src/nativewindow/native/NativewindowCommon.c (diff) The file was modified src/newt/native/X11Display.c (diff) The file was modified src/newt/classes/jogamp/newt/driver/x11/X11Display.java (diff) The file was modified src/nativewindow/native/x11/Xmisc.c (diff) The file was modified src/newt/classes/jogamp/newt/driver/kd/KDWindow.java (diff) The file was modified src/newt/native/KDWindow.c (diff)
Commit
d5866a5d55f9445c7cedc1df03dc7958d6fd229e
by Sven Gothel GLContext adds FBO availability to profile mapping; Fix GL[Auto]Drawable/GLContext re-association (switch) incl. unit test. - GLContext adds FBO availability to profile mapping - GLContext added 'GLDrawable setGLDrawable(GLDrawable readWrite, boolean setWriteOnly)' allowing to set the write GLDrawable. This method enables switching context/drawable. Fix GL[Auto]Drawable/GLContext re-association (switch) incl. unit test Commit eed8508ae1132e5f45f788e9cb3f3d5a1050ac70 impl. of GLAutoDrawable's setContext(..) enabled proper setting of the GLAutoDrawable context incl. updating the context's drawables. Test covers: - remove/set (GLContext, GLEventListener) of GL[Auto]Drawable - switch (GLContext, GLEventListener) of 2 GLAutoDrawables The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLProfile.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01cSwingAWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLExternalContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextDrawableSwitchNEWT.java The file was modified src/jogl/classes/jogamp/opengl/egl/EGLContext.java (diff) The file was modified www/index.html (diff)
Commit
e85e3ec2a73ac35aaf911f0b1e34b234be1622da
by Sven Gothel Enhance Bootsrapping of JOGL around 37% - 40% (1st start in new JVM) - GLProfile and GLContext* GLProfile: Enhance bootsrapping performance of loading GL*Impl class - Offthread classloading of all GL*Impl via reflection at startup reduces startup time here around 12% (800ms down to 700ms). GLContext*: Enhance bootsrapping performance of querying available GL profiles - Add PROFILE_ALIASING mode, defaults to true - can be disabled w/ property 'jogl.debug.GLContext.NoProfileAliasing' - PROFILE_ALIASING: If true (default), bootstrapping the available GL profiles will use the highest compatible GL context for each profile, hence skipping querying lower profiles if a compatible higher one is found. Linux x86_64 - Nvidia: 28%, 700ms down to 500ms Linux x86_64 - AMD : 40%, 1500ms down to 900ms - GL*Impl: - make fields final: glProfile, _context, buffer*Tracker and glStateTracker - allow null _context/glProfile in initialization (bootstrapping) - JoglVersion.getDefaultOpenGLInfo(..) - add arg: 'boolean withCapabilitiesInfo', allowing to suppres the list of caps The file was modified make/config/jogl/gl-impl-CustomJavaCode-common.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/JoglVersion.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gles2.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLProfile.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownCompleteNEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/android/MD.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLProfile01NEWT.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gles1.java (diff) The file was modified make/scripts/tests-x64.bat (diff) The file was modified make/scripts/java-win32.bat (diff) The file was modified make/scripts/java-win64-dbg.bat (diff) The file was modified make/scripts/java-win32-dbg.bat (diff) The file was modified make/scripts/java-win64.bat (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/newt/native/X11Display.c (diff) The file was modified src/jogl/native/libav/jogamp_opengl_util_av_impl_FFMPEGMediaPlayer.c (diff) The file was modified src/nativewindow/native/x11/Xmisc.c (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTEclipseGLCanvas01GLn.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor03AWTGLn.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor02GLn.java (diff) The file was added make/scripts/tests-osx-x64-mainthread.sh The file was modified src/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTJOGLGLCanvas01GLn.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTJOGLGLCanvas01GLn.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified make/scripts/tests.sh (diff)
Commit
72a84b422327c6abb688339419d3552ec0e5c70c
by Sven Gothel EGLGraphicsDevice adds desctruction callback and nativeDisplayID; EGLDisplayUtil adds creation of EGLGraphicsDevice. Due to EGL's location in JOGL, supporting destruction of an EGLGraphicsDevice is solved (hack) temporary by passing an eglTerminate callback to it's ctor. Using EGLGraphicsDevice's close() method to also issue eglTerminate() simplifies the code. In future we shall move EGL to nativewindow! The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/broadcom/egl/Display.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDisplayUtil.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/android/AndroidDisplay.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/kd/KDDisplay.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/AbstractGraphicsDevice.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilitiesImmutable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilities.java (diff) The file was added src/newt/classes/jogamp/newt/driver/kd/Display.java The file was removed src/newt/classes/jogamp/newt/driver/kd/KDScreen.java The file was added src/newt/classes/jogamp/newt/driver/kd/Window.java The file was removed src/newt/classes/jogamp/newt/driver/kd/KDWindow.java The file was added src/newt/classes/jogamp/newt/driver/kd/Screen.java The file was removed src/newt/classes/jogamp/newt/driver/kd/KDDisplay.java The file was modified src/newt/classes/jogamp/newt/driver/kd/Window.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/kd/Display.java (diff) The file was modified make/build-newt.xml (diff) The file was modified src/newt/native/KDWindow.c (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/DisplayImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/ScreenImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/kd/Screen.java (diff)
Commit
20bf031db719f7baa4c6e74734fc999061e08fe2
by Sven Gothel Bug 599 - FBObject / Offscreen Support - Part 1 - New FBObject implementation handling FBO and it's attachments *** API CHANGE: Util -> Core *** while it's size and sample-count can be reconfigured on the fly. - com.jogamp.opengl.util.FBObject -> com.jogamp.opengl.FBObject - agnostic to texture unit - separate attachments using OO hierarchy reflecting FBO - handling MSAA and blitting - no FBO destruction for reconfig (attach/detach) - New GLFBODrawableImpl impl. an FBObject based GLDrawable - Instantiated by a dummy native surface (onscreen and invisible) hooked up to a dummy GLDrawable, which is the delegation for context creation. - Utilizies ProxySurface.UpstreamSurfaceHook for dummy surface avoiding specialization for native platforms. - TODO: Allow to utilize common surface interface as a dummy-surface to supporting API seperation of windowing/GL. The latter allows impl. of createGLDrawable(NativeSurface) with FBO. - New OffscreenAutoDrawable (extends GLAutoDrawableDelegate) for all offscreen drawables. Shall replace GLPbuffer. - New GLCapabilities*.isFBO() / setFBO(boolean) to request FBO offscreen, similar to isPBuffer(). Rule: if both are requested, FBO shall be favored. - GLContext adds raw FBO availability query (min. FBO avail), FBObject contains fine grained queries (TODO: Move parts to GLContext for efficiency). - Add framebuffer tracking, allowing fast querying: - GLBase/GLContext: public int getBoundFramebuffer(int target); public int getDefaultDrawFramebuffer(); public int getDefaultReadFramebuffer(); - GLContextImpl public final void setBoundFramebuffer(int target, int framebufferName) .. called by GL impl bind framebuffer - GL: getDefaultDrawFramebuffer(), getDefaultReadFramebuffer() Adding default framebuffer queries being issued by GL.glBindFramebuffer(target, 0) w/ a default framebuffer, o.e. zero. This allows a transparent use of a custom FBO even in case the applications attempts to reset FBO to zero. Value flow: GL <- GLContext <- GLDrawable, - GLCapabilities handle fbo/pbuffer seperate, don't disable the other - GLContext/GL track read/write framebuffer to be queried by FBObject to determine whether to bind/unbind a framebuffer - Test cases for multiple FBO w/ and w/o MSAA Other Features: - New interface ProxySurface.UpstreamSurfaceHook, allowing to hook an upstream surface of unknown type providing lifecycle and information (size, ..) callbacks. Used for all new dummy NativeSurface impl and SWT GLCanvas. - GLContext -> GLDrawable propagation context/drawable lifecycle via ProxySurface.UpstreamSurfaceHook allowing dynamic resources to react (create, init, ..) - contextRealized() - contextMadeCurrent() - SurfaceChangeable -> MutableSurface currently only contains setting the surface handle. TODO: May need to move ProxySurface.UpstreamSurfaceHook -> MutableSurface.UpstreamSurfaceHook, allowing other impl. classes (NEWT OffscreenWindow) to utilize the new upstream hookup mechanism - will allow FBO/Dummy window to work. - SWT GLCanvas using ProxySurface.UpstreamSurfaceHook for proper size propagation. - New GLAutoDrawable::getUpstreamWidget(), allowing GLEventListener to fetch the owning Java side UI element (NEWT, SWT, AWT, ..). - GLDrawableFactory: Removed createOffscreenSurface() - unused and not GL related - EGLDrawableFactory handles device/profile avail. mapping while actually creating context/drawable. This allows us to learn whether the ES context is software/hardware as well as FBO avail. - EGLDrawable: Removed secret buckets of EGL configs :) Employ native surface (X11, WGL, ..) to EGL 'mapping' in EGLDrawableFactory utilizing new EGLUpstreamSurfaceHook (implements ProxySurface.UpstreamSurfaceHook). Other Bugs: - Add CTX_OPTION_DEBUG to ctx/extension cache key since only a debug ctx may expose the ARB debug capability. This bug caused lack of ARB/AMD debug functionality. - Fix GLProfile deadlock (debug mode, w/ EGL/ES, no X11), dump availability information _after_ lock. - ImmModeSink draw(): Use GL's glDrawElements(..), don't cast for GL2ES1. Fixes use for GL2ES2. - Fix KeyEvent.getKeyChar() comment (-> only stable for keyTyped(..)) Misc: - Refined alot of API doc - New GLExtensions holds commonly used GL extension strings, allows better referencing and usage lookup. - Move GL (interface) decl. to GLBase - GLBuffers: Cleanup API doc (format, types) - TextureIO: Add PAM and PPM static suffix identifier - GLCapabilities getNumSamples() returns 0 if sampleBuffers is disabled, this seems to be more natural. - finalized a lot The file was removed src/nativewindow/classes/javax/media/nativewindow/SurfaceChangeable.java The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite02AWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite01NEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLDrawable.java (diff) The file was removed src/jogl/classes/com/jogamp/opengl/util/FBObject.java The file was added src/jogl/classes/jogamp/opengl/GLFBODrawableImpl.java The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXPbufferCGLDrawable.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/DefaultGraphicsDevice.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gl2_es2.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDebugMessageHandler.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/windows/GDISurface.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface.m (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PixmapGLXDrawable.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/AbstractGraphicsDevice.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite01AWT.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/GLConfiguration.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOMRTNEWT01.java The file was modified make/scripts/tests-x32.bat (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieSimple.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLContext.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/spi/NetPbmTextureWriter.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestPNGTextureFromFileAWT.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/GLEmitter.java (diff) The file was modified etc/test.bat (diff) The file was modified make/config/jogl/gl-if-CustomJavaCode-gl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLOnscreenDrawable.java (diff) The file was removed src/jogl/classes/jogamp/opengl/x11/glx/X11DummyGLXDrawable.java The file was modified src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES1AWT.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES2NEWT.java The file was modified make/config/jogl/gl-impl-CustomJavaCode-common.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11OnscreenGLXDrawable.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/WrappedSurface.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/BuildStaticGLInfo.java (diff) The file was added src/jogl/classes/com/jogamp/opengl/GLExtensions.java The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLContext.java (diff) The file was modified make/config/jogl/gl-common.cfg (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXDrawable.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/MultisampleDemoES1.java The file was added src/jogl/classes/com/jogamp/gluegen/runtime/opengl/GLNameResolver.java The file was modified src/newt/classes/com/jogamp/newt/Window.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-desktop.java (diff) The file was modified src/newt/classes/jogamp/newt/OffscreenWindow.java (diff) The file was modified make/scripts/java-win32.bat (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/android/MD.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/util/UITestCase.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfigurationFactory.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES1NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es1/GearsES1.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLProfile.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLContext.java (diff) The file was modified make/scripts/tests-x64.bat (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/shader/mgl_default_xxx.fp The file was modified src/newt/classes/com/jogamp/newt/event/KeyEvent.java (diff) The file was modified src/newt/native/NewtMacWindow.m (diff) The file was modified src/jogl/classes/jogamp/opengl/util/av/EGLMediaPlayerImpl.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/TextureIO.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/GLReadBufferUtil.java (diff) The file was modified make/scripts/java-win64-dbg.bat (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLPbufferDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11PbufferGLXDrawable.java (diff) The file was removed src/jogl/classes/jogamp/opengl/windows/wgl/WindowsDummyWGLDrawable.java The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestGearsES2NEWT.java (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface-pbuffer.m (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGearsGLJPanelAWTBug450.java The file was modified src/nativewindow/classes/javax/media/nativewindow/ProxySurface.java (diff) The file was modified make/config/jogl/gl-impl-CustomJavaCode-gles1.java (diff) The file was modified .gitignore (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLJPanel.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/awt/TestGLJPanelAWTBug450.java The file was added src/jogl/classes/jogamp/opengl/egl/EGLUpstreamSurfaceHook.java The file was modified src/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLGraphicsConfigurationFactory.java (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/glsl/TestFBOMRTNEWT01.java The file was modified src/jogl/classes/javax/media/opengl/DefaultGLCapabilitiesChooser.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/graph/demos/ui/UIListenerBase01.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/offscreen/ReadBufferBase.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBODrawableNEWT.java The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLGraphicsConfiguration.java (diff) The file was modified make/scripts/java-win32-dbg.bat (diff) The file was removed src/jogl/classes/com/jogamp/gluegen/runtime/opengl/GLExtensionNames.java The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsExternalWGLDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilities.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsScreen.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestShutdownCompleteNEWT.java (diff) The file was added src/nativewindow/classes/javax/media/nativewindow/MutableSurface.java The file was modified src/jogl/classes/jogamp/opengl/GLGraphicsConfigurationUtil.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/GLBuffers.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/awt/TextRenderer.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsPbufferWGLContext.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/TextureSequenceCubeES2.java (diff) The file was modified etc/test_dbg.bat (diff) The file was modified src/test/com/jogamp/opengl/test/junit/graph/demos/GPURendererListenerBase01.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/MultisampleDemoES2.java The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestGLReadBufferUtilTextureIOWrite02NEWT.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/JoglVersion.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXExternalCGLContext.java (diff) The file was modified doc/Platform.GLES.txt (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/glsl/TestGLSLShaderState01NEWT.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/FBOMix2DemosES2.java The file was modified make/config/jogl/gl-impl-CustomJavaCode-gles2.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff) The file was added src/jogl/classes/com/jogamp/opengl/OffscreenAutoDrawable.java The file was modified make/config/jogl/gl-impl-CustomJavaCode-gl4bc.java (diff) The file was modified src/jogl/classes/jogamp/graph/curve/opengl/VBORegion2PES2.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawableDelegate.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawable.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestPNGTextureFromFileNEWT.java (diff) The file was modified make/scripts/java-win64.bat (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/graph/TestTextRendererNEWT00.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLProfile01NEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified doc/TODO.txt (diff) The file was modified make/stub_includes/opengl/macosx-window-system.h (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/glsl/TestGLSLShaderState02NEWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLBase.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLCapabilitiesImmutable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableImpl.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/gl2/Gears.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/macosx/MacWindow.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/shader/texture02_xxx.fp The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/awt/Screenshot.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/offscreen/Surface2File.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/SurfaceUpdatedHelper.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextDrawableSwitchNEWT.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/shader/mgl_default_xxx.vp The file was modified src/nativewindow/native/macosx/OSXmisc.m (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/av/MovieCube.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/caps/MultisampleDemoES1.java The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLAutoDrawableDelegateNEWT.java (diff) The file was added src/jogl/classes/com/jogamp/opengl/FBObject.java The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDisplayUtil.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOMix2DemosES2NEWT.java The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsBitmapWGLDrawable.java (diff) The file was modified src/jogl/classes/com/jogamp/gluegen/runtime/opengl/GLProcAddressResolver.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/TextureSequence.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor02GLn.java (diff)
Commit
2da0d69fec6209c55832f5aae9d365e25d3aba6d
by Sven Gothel Fix NEWT exception handling in event dispatching: Catch and fwd to caller Exceptions caused by NEWTEvent processing (on it's EDT) were not propagated to the caller (diff thread). Hence the EDT were brought down and the caller may have waited forever (deadlock). Catch exception if caller waits and throw exception at waiting point. The file was modified src/newt/classes/jogamp/newt/DefaultEDTUtil.java (diff) The file was modified src/newt/classes/jogamp/newt/DisplayImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/event/NEWTEventTask.java (diff)
Commit
4a08de4511a627c3d87d6a33debbd561962c0312
by Sven Gothel GLCapabilities Native Aquisition: Set alpha bits at last - due to it's auto setting by setSampleBuffers(true) and setBackgroundOpaque(false) This bug lead to X11 GLCapabilities rgba: 8/8/8/1 - which ofc is invalid. Sideeffect was a bad selected GLXFB configuration and the GLContext couldn't be made current. Patch sets alpha bits reflecting reality carefully after opaque/samples. Added API doc note. The file was modified src/test/com/jogamp/opengl/test/junit/newt/parenting/TestTranslucentParentingAWT.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WGLGLCapabilities.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/Capabilities.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLGraphicsConfigurationUtil.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/caps/TestTranslucencyAWT.java (diff) The file was modified src/jogl/classes/javax/media/opengl/DefaultGLCapabilitiesChooser.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfiguration.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/caps/TestMultisampleES2NEWT.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/awt/TestAWTCardLayoutAnimatorStartStopBug532.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestGearsES2NEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawable.java (diff) The file was modified src/jogl/native/macosx/MacOSXWindowSystemInterface.m (diff) The file was modified src/nativewindow/native/macosx/OSXmisc.m (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXPbufferCGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified make/scripts/tests.sh (diff)
Commit
e58e7739379147af8c7b875f6e8a7cdb40e342bc
by Sven Gothel Fix OSX OffscreenLayerSurface (OLS) regressions (pbuffer based) - Use pbuffer (still), don't set FBO (invisible) - OLS (only impl is JAWTWindow now) stores the attached layer handle created and attached by the GLContext implementation, so 'others' may detach it -> NewtCanvasAWT - NewtCanvasAWT.removeNotify() needs to ask the OLS to detach the layer since it's parent will be gone. - MacOSXCGLContext destroy allows a removed OLS (see above) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/OffscreenLayerSurface.java (diff) The file was modified src/newt/classes/com/jogamp/newt/awt/NewtCanvasAWT.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor02GLn.java (diff) The file was modified make/scripts/tests.sh (diff)
Commit
4b5a0f6557d7152ec770bc13ad3c494449de0529
by Sven Gothel Fix Bug 606 - New AWT threading implementation breaks .. ; Fix GLAutoDrawable multi-threading w/ proper pattern (hope so) Considering code changes and remarks: 3ed491213f8f7f05d7b9866b50d764370d8ff5f6 1a91ec5c8b6fd9d9db7bc115569c369fe7b38e9b 3334a924309a9361a448d69bc707d4cce416b430 4f27bcecf7484dc041551f52a5c49e2884cb3867 It seems necessary to have - recursive locking employed for all semantic actions which changes drawable & context (and the Window resource) - to avoid deadlock, we have to ensure the locked code segment will not spawn off to another thread, or a thread holds the lock, spawns of an action requiring the lock. .. sure - other read-only methods (flags, ..) shall at least utilize a safe local copy of a volatile field if further use to produce the result is necessary. - flags like sendReshape require to be volatile to guarantee it's being processed Patch impacts: AWT/SWT GLCanvas, GLAutoDrawableBase [and it's specializations] and hopefully closes any loopholes of missing a cache hit, etc. If you review this and find optimizations, i.e. removing a lock due to semantics etc, don't hold back and discuss it, please. The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLAutoDrawableDelegateNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextDrawableSwitchNEWT.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextSurfaceLockNEWT.java (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableHelper.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawableDelegate.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor02GLn.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTJOGLGLCanvas01GLn.java (diff) The file was modified doc/TODO.txt (diff)
Commit
00bef95008b02cc71e166da122884402e9381f44
by Sven Gothel Fix GraphicsConfigurationFactory: Map factory to device-type _and_ capabilities-type; Add a pre-set nativeVisualID to chooseGraphicsConfiguration(..) Map factory to device-type _and_ capabilities-type: - Allows using different GraphicsConfigurationFactory implementations for different capabilities-types. Previous impl. failed to use an OpenGL agnostic CapabilitiesImmutable for 'chooseGraphicsConfiguration(..)' since only the GL aware factory was mapped. The latter failed since it expected a GLCapabilitiesImmutable. - The passed capabilities-type as well as device-type given at getFactory(..) is traversed top-to-down to find a most suitable factory: For-All devT := getTopDownDeviceTypes(deviceType) For-All capsT := getTopDownCapabilitiesTypes(capabilitiesType) f = factory.get(devT, capsT); if(f) { return f; } end end Add a pre-set nativeVisualID to chooseGraphicsConfiguration(..) - In situations where a native visualID is already chosen [by external means for example], but we still need to query a matching GraphicsConfiguration - we require to pass a non VisualIDHolder.VID_UNDEFINED nativeVisualID. We had a hack implemented before within some implementations and their static calls, however an agnostic mechanism is required to implement new NativeSurface/Window's platform agnostic. - X11GLXGraphicsConfigurationFactory: respect a pre-set xvisualID - X11GLXDrawableFactory.createProxySurfaceImpl(..) queries the given windowHandle's visualID and 'chooses' the configuration accordingly. If the visualID is undefined an exception is thrown, since window is invalid. These mechanics are implicit for Windows and OSX. Fix X11GLXGraphicsConfiguration.updateGraphicsConfiguration(): - Skip any action if a valid X11GLCapabilities is already chosen, i.e. w/ visualID. Otherwise choose a suitable configuration incl. visualID. The latter is quite impossible and invalid, since visualID must be defined at window creation time and the update method is issued with a valid window. X11 - Misc: - Added 'int jogamp.nativewindow.x11.X11Lib.GetVisualIDFromWindow(..)' - All returned visualID's are of type 'int' The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11ExternalGLXContext.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/kd/KDWindow.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/windows/WindowsWindow.java (diff) The file was modified make/config/nativewindow/x11-CustomJavaCode.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/awt/WindowsAWTWGLGraphicsConfigurationFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfigurationFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/awt/MacOSXAWTCGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/awt/AWTGraphicsConfiguration.java (diff) The file was modified src/newt/classes/jogamp/newt/OffscreenWindow.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/macosx/MacWindow.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/broadcom/egl/Window.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/awt/AWTCanvas.java (diff) The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLGraphicsConfigurationFactory.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/DefaultGraphicsConfigurationFactoryImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/awt/X11AWTGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/native/x11/Xmisc.c (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/x11/X11Window.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/intel/gdl/Window.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLGraphicsConfigurationFactory.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsDevice.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/x11/X11GraphicsScreen.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/X11GraphicsConfigurationFactory.java (diff)
Commit
7bb5885fc3a904f49e22f0c8cbf747d9b189a7ba
by Sven Gothel SWT Update: SWT GLCanvas creates lazy when resource is ready; Create new NewtCanvasSWT allowing to parent NEWT windows natively. SWT GLCanvas creates lazy when resource is ready - Ensures drawable and context are created when size > zero and native visualID is valid. The latter is platform dependent. - Note that you cannot utilize custom GLCapabilities w/ this one, since the configurations is already realized - use NewtCanvasSWT. Create new NewtCanvasSWT allowing to parent NEWT windows natively: - Similar to NewtCanvasAWT - Allows attaching / detaching NEWT windows NewtCanvasAWT: Public setNEWTChild(..) fixed Added test cases for the above - tested on Linux, OSX and Windows w/ SWT Note: As usual for OSX, add -XstartOnFirstThread Details: - NEWT Display has new method: 'EDTUtil setEDTUtil(EDTUtil)' allowing to set a custom event dispatch utility. We use this to set our SWTEDTUtil for using NEWT w/ SWT complying w/ SWT threading constraints. The file was modified src/jogl/classes/com/jogamp/gluegen/opengl/BuildComposablePipeline.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java (diff) The file was modified src/newt/classes/jogamp/newt/DisplayImpl.java (diff) The file was modified src/newt/classes/jogamp/newt/awt/event/AWTParentWindowAdapter.java (diff) The file was modified make/stub_includes/win32/wingdi.h (diff) The file was modified make/build-common.xml (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff) The file was modified src/newt/classes/com/jogamp/newt/Display.java (diff) The file was added src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01aSWT.java The file was added src/newt/classes/com/jogamp/newt/swt/NewtCanvasSWT.java The file was modified make/scripts/java-win64-dbg.bat (diff) The file was modified make/scripts/tests-x64.bat (diff) The file was modified make/build-newt.xml (diff) The file was modified src/newt/native/MacWindow.m (diff) The file was added src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting04SWT.java The file was modified src/nativewindow/native/macosx/OSXmisc.m (diff) The file was added src/newt/classes/com/jogamp/newt/swt/SWTEDTUtil.java The file was modified make/scripts/tests.sh (diff) The file was modified src/newt/classes/jogamp/newt/driver/windows/WindowsWindow.java (diff) The file was modified make/build-test.xml (diff) The file was added src/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting04AWT.java The file was added src/test/com/jogamp/opengl/test/junit/jogl/swt/TestNewtCanvasSWTGLn.java The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was modified etc/profile.jogl (diff) The file was removed src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTAccessor02GLn.java The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/newt/classes/com/jogamp/newt/awt/NewtCanvasAWT.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/awt/AWTDisplay.java (diff) The file was modified src/newt/classes/jogamp/newt/driver/macosx/MacWindow.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/swt/GLCanvas.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/swt/TestSWTJOGLGLCanvas01GLn.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
Commit
93ab5e38ed59d6df101886ac8a2207955b0cea7f
by Sven Gothel Add property: 'jogl.disable.opengles' to disable querying and using OpenGL ES This might be required by a few older buggy ES implementations. Also assists to discable ANGLE is not properly detected (?) on Windows 32bit - the latter causes SEGV within FF and Chrome. TODO: Fix ANGLE detection and usage within broser NOTE: ANGLE works fine standalone .. The file was modified src/jogl/classes/javax/media/opengl/GLProfile.java (diff)
Commit
9e87acd921bcb357f1ec88d166bde672b54b02c8
by Sven Gothel Fix X11 Display Connection leak w/ new GLAutoDrawableBase code when used w/ offscreen drawables, reported by Mark Raynsford New common GLAutoDrawableBase missed to close the AbstractGraphicsDevice in case it has been created and dedicated for the passed GLDrawable. This detailed knowledge is only known to the creator, hence it is passed in the constructor and is being passed through all specializations. Further more the new X11/GLX impl. of GLDrawableFactory's 'createMutableSurfaceImpl' always creates it's own private X11 display connection to avoid locking / threading issues. Since the old implementation reused the shared display connection which is prone to threading issues, this bug was not visible before. Also fixed the unit test TestNEWTCloseX11DisplayBug565, now correctly validating that no display connection is left over after a new cycle of create/destroy of onscreen and offscreen drawables. The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBODrawableNEWT.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestNEWTCloseX11DisplayBug565.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextDrawableSwitchNEWT.java (diff) The file was modified make/scripts/tests.sh (diff) The file was modified src/jogl/classes/jogamp/opengl/GLPbufferImpl.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLAutoDrawableDelegateNEWT.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/X11Util.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/OffscreenAutoDrawable.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLAutoDrawableDelegate.java (diff) The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff) The file was added make/scripts/make.jogl.all.linux-armv7hf.sh The file was modified make/scripts/make.jogl.all.linux-armv7hf-cross.sh (diff)
Commit
3732d0162051ffe56af34ba345b59c15bfc6f552
by Sven Gothel Adapt to GlueGen ARM Build Changes 422d7a5eb53fca6642ebf4e8910d8b0311bb2597 Note: Patch set not clean since build*xml files contain 'NEWT Broadcom' driver changes of upcoming commit due to pervious uncommitted work. Will be fixed w/ next commit. The file was added make/scripts/make.jogl.all.linux-armv6hf-cross.sh The file was modified make/build-common.xml (diff) The file was added make/scripts/tests-armv6_armel.sh The file was added make/scripts/tests-armv6_armhf.sh The file was added make/scripts/adb-install-all-armv6.sh The file was added make/scripts/adb-reinstall-all-armv6.sh The file was added make/scripts/targetcommand-loop.sh The file was added make/scripts/make.jogl.all.linux-armv6.sh The file was added make/scripts/make.jogl.all.linux-armv6-cross.sh The file was added make/scripts/make.jogl.all.linux-armv6hf.sh The file was removed make/scripts/make.jogl.all.linux-armv7.sh The file was removed make/scripts/tests-linux-armv7hf.sh The file was removed make/scripts/tests-linux-armv7.sh The file was modified make/scripts/targetcommand-awt.sh (diff) The file was removed make/scripts/make.jogl.all.linux-armv7hf.sh The file was modified make/build-jogl.xml (diff) The file was modified make/build-nativewindow.xml (diff) The file was removed make/scripts/make.jogl.all.linux-armv7hf-cross.sh The file was modified make/scripts/targetcommand-newt.sh (diff) The file was added make/scripts/tests-linux-armv6.sh The file was modified make/scripts/adb-launch-main.sh (diff) The file was added make/scripts/tests-linux-armv6hf.sh The file was added make/scripts/make.jogl.all.android-armv6-cross.sh The file was modified make/build-test.xml (diff) The file was removed make/scripts/make.jogl.all.linux-armv7-cross.sh The file was removed make/scripts/tests-armv7l_eabi.sh The file was modified make/scripts/tests.sh (diff) The file was modified make/build-newt.xml (diff)
Commit
0ca481381b51b4082ac2b3bbae80cfaf5b60c3b8
by Sven Gothel NEWT: Adding support for BCM VC IV (Broadcom VideoCodec 4 ) and Linux console mouse tracker Rasperry PI uses the 'BCM VC IV' GPU via console as it's default configuration. This driver enables direct support for JOGL/NEWT. Due to the lack of detection (TODO) users have to specify the Java property: -Dnativewindow.ws.name=jogamp.newt.driver.bcm.vc.iv - Autodetection should be included in 'NativeWindowFactory._getNativeWindowingType()' while adding a new TYPE: 'TYPE_BCM_VC_IV'. - Autodetection may need to detect whether an X11 Display runs and the installed EGL library uses it (instead of the default console one) This work is authored in coop w/ Xerxes Rånby <xerxes@zafena.se>! The file was added src/newt/classes/jogamp/newt/driver/bcm/vc/iv/Display.java The file was added src/newt/native/bcm_vc_iv.h The file was added src/newt/classes/jogamp/newt/driver/bcm/vc/iv/Window.java The file was added src/newt/classes/jogamp/newt/driver/linux/LinuxMouseTracker.java The file was added src/newt/classes/jogamp/newt/driver/bcm/vc/iv/Screen.java The file was removed src/newt/classes/jogamp/newt/driver/broadcom/egl/Display.java The file was removed src/newt/native/BroadcomEGL.c The file was added src/newt/classes/jogamp/newt/driver/bcm/egl/Display.java The file was removed src/newt/classes/jogamp/newt/driver/broadcom/egl/Screen.java The file was added src/newt/native/bcm_vc_iv.c The file was removed src/newt/classes/jogamp/newt/driver/broadcom/egl/Window.java The file was modified make/build-common.xml (diff) The file was added src/newt/classes/jogamp/newt/driver/bcm/egl/Screen.java The file was added src/newt/native/bcm_egl.c The file was added src/newt/classes/jogamp/newt/driver/bcm/egl/Window.java The file was modified make/build-newt.xml (diff)
Commit
43a473b2005d7f59a7f4f5b8bc7ca9ae88b4e894
by Sven Gothel EGLDisplayUtil: Workaround (latest) PVR 540 EGL regression where 3nd EGLDisplay's eglInitialize(..) fails ; Fix EGLDrawableFactory.getEGLSurface() - EGLDisplayUtil: Workaround (latest) PVR 540 EGL regression where 3nd EGLDisplay's eglInitialize(..) fails In this case and if eglGetDisplay(..) fails w/ a non EGL_DEFAULT_DEVICE, fall back to EGL_DEFAULT_DEVICE - always. This workaround actually simplifies handling both cases. - Fix EGLDrawableFactory.getEGLSurface() Tests whether a given NativeSurface w/ EGLGraphicsDevice and EGLGraphicsConfiguration has a valid EGL Surface. Only if true, reuse the whole NativeSurface, otherwise construct the missing pieces (device, config and use a WrappedSurface for EGL). The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDisplayUtil.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLContext.java (diff) The file was modified src/nativewindow/classes/com/jogamp/nativewindow/egl/EGLGraphicsDevice.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff)
Commit
ef099612d2adb7223d928d2ba7a88f984501ddb9
by Sven Gothel EGLGraphicsConfigurationFactory: Fix platform w/o GLX but X11 window handle. Without GLX but X11 windows, there is no pre-configured X11GLXGraphicsConfigurationFactory set, hence fetch the fallback X11GraphicsConfigurationFactory via: GraphicsConfigurationFactory.getFactory(com.jogamp.nativewindow.x11.X11GraphicsDevice.class, CapabilitiesImmutable.class) TODO: Cleanup cases for other platform - simplify! The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfigurationFactory.java (diff)
Commit
09a8151abe3934ccf17fa84d5b2000e259351312
by Sven Gothel Fix FFMPEGMediaPlayer: Use GL_ALPHA (texture format intern/data) instead of GL_RGBA/GL_ALPHA ; Load dedicated native libav/libffmpeg - ES2 spec does not allow GL_RGBA/GL_ALPHA. - Load dedicated native libs (libav/libffmpeg) since distributions don't create symlink e.g. libavutil.so -> libavutil.so.53 The file was modified src/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGDynamicLibraryBundleInfo.java (diff) The file was modified src/jogl/classes/jogamp/opengl/util/av/GLMediaPlayerImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGMediaPlayer.java (diff)
Commit
ee5c34e5bb067631572a7001ab1ec3543c52065f
by Sven Gothel Robostness: GLDrawableImpl's contextMadeCurrent()/contextRealized() ; GLFBODrawableImpl.contextMadeCurrent(false), OffscreenAutoDrawable.setSize(..) GLDrawableImpl's contextMadeCurrent()/contextRealized(): - Catch exception which may appear during callback and cont. w/ GLContextImpl's release()/destroy() while throwing catched exception at end. GLFBODrawableImpl.contextMadeCurrent(false): - Detect null Colorbuffer ASAP and throw exception OffscreenAutoDrawable.setSize(..): - Catch exceptions at 1) GLFBODrawableImpl.setSize(..) and 2) GLContext.release() .. throw it in proper order. The file was modified src/jogl/classes/com/jogamp/opengl/OffscreenAutoDrawable.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLFBODrawableImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
Commit
b193d85b406b36ce091ad6bfcc488e9dfda9e12b
by Sven Gothel Robustness: FBObject or reset(..) - Add property 'jogl.fbo.force.min' to simulate minimum FBO caps - Check new size in reset(..) - Ignore the status in attachColorbuffer(..), attachRenderbufferImpl(..) and attachTexture2D(..) when recreating the resources in detachAllImpl(..)/reset(..). The status is validated after recreation of all resources in detachAllImpl(..) The file was modified src/jogl/classes/com/jogamp/opengl/FBObject.java (diff)
Commit
da697607fce1e6d2b0c65fcc37030c88981b76ec
by Sven Gothel Fix EGLDrawableFactory.getEGLSurface(..): Catch WrappedSurface case w/ EGLDevice and EGLGraphicsConfiguration - Regression of 43a473b2005d7f59a7f4f5b8bc7ca9ae88b4e894 Do not create a WrappedSurface around a given WrappedSurface if the latter is intended for EGL, i.e. uses EGLDevice and EGLGraphicsConfiguration even though the surface handle is not valid [yet]. For this case we assume the WrappedSurface has a lifecycle hook as it is used for the dummy drawable. Otherwise we would have a recursive WrappedSurface, ie with EGLDrawableFactory.createOnscreenDrawableImpl( dummySurface ), where dummySurface is a WrappedSurface w/ EGL pbuffer drawable lifecycle hook. Commit 43a473b2005d7f59a7f4f5b8bc7ca9ae88b4e894 didn't take the above case into account. The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified make/scripts/targetcommand-newt.sh (diff) The file was modified make/scripts/tests.sh (diff)
Commit
fe78d5095ef98215ce6c73d8912dfa19ae708bd0
by Sven Gothel Robostness FBObject / GLReadBufferUtil: Ignore pre-existing GL errors - remove GL error checking in FBObject bind/unbind. - User GL code caused errors shall not fail impl. - FBObject bind/unbind GL error checking is almost useless due to it's simple code, would only catch user GL code errors, which should be ignored here. - MultisampleDemoES2: Only enable GL_MULTISAMPLE if available, i.e. validate passed multisample flag The file was modified src/jogl/classes/com/jogamp/opengl/util/GLReadBufferUtil.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/FBObject.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/MultisampleDemoES2.java (diff) The file was modified make/scripts/targetcommand-newt.sh (diff)
Commit
ec0f4a5ab604c73d40d3585c0147b451ad53dcf5
by Sven Gothel GLDrawableFactory.createGLDrawable() offscreen: Fix caps - set double-buffer := false to be consistent w/ GLDrawableFactory.createOffscreenDrawable() TestGLDrawable01NEWT: Enhance test case to run w/ EGLDrawableFactory (ES2) besides GL2 and GLX/WGL/..-Factory The file was modified make/scripts/targetcommand-awt.sh (diff) The file was modified make/scripts/targetcommand-newt.sh (diff) The file was added src/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLDrawable01NEWT.java The file was removed src/test/com/jogamp/opengl/test/junit/jogl/drawable/TestDrawable01NEWT.java The file was modified make/scripts/tests.sh (diff) The file was modified src/jogl/classes/jogamp/opengl/GLDrawableFactoryImpl.java (diff)
Commit
b255e569c5197aa60255a6141960a39a827222c4
by Sven Gothel Fix EGLDrawableFactory.createOffscreenDrawableImpl(NativeSurface): Validate passed NativeSurface 'target' via getEGLSurface(target) Makes impl. consistent w/ EGLDrawableFactory.createOnscreenDrawableImpl(). Even for offscreen drawable creation, the passed NativeSurface maybe platform specific (X11, GLX) for which we require to create a WrappedSurface w/ EGL instances. The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff)
Commit
5a5c2bc7a113906453e0de6f0403f394acdb9a4f
by Sven Gothel Fix GLCanvas's JAWTWindow reference ; Add ES2 test in TestAWT01GLn ; Ubuntu 12 .04/Pandaboard(Omap4, PowerVR SGX 540) 103 /108 tests passed (before freeze) of 124 total Fix GLCanvas's JAWTWindow reference - drawable.getNativeSurface() may not be a JAWTWindow due to our EGL WrappedSurface. Hence store the created JAWTWindow reference locally. Add ES2 test in TestAWT01GLn - test EGL/ES2 w/ AWT GLCanvas Ubuntu 12 .04/Pandaboard(Omap4, PowerVR SGX 540): 103 /108 tests passed (before freeze) of 124 total - machine freezes around test 108 .. - new passed unit test high for ES2 incl. AWT tests The file was modified make/scripts/tests.sh (diff) The file was modified src/test/com/jogamp/opengl/test/junit/jogl/awt/TestAWT01GLn.java (diff) The file was modified src/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff) The file was modified make/scripts/targetcommand-awt.sh (diff)
Commit
3ab518e90eb4cf82bcb8b990d337a5e4a531136b
by Sven Gothel GLProfile/NativeWindowFactory: Remove deprecated argument 'firstUIActionOnProcess' of initSingleton() method The notion of changing the threading behavior of native initialization was deprecated for over a year. The code still contained the bits and pieces, i.e. whether X11Util.initSingletion() is invoked before or after optional AWT initialization. This condition has been removed now and behavior is uniform, i.e. X11Util.initSingletion() is invoked after optional AWT initialization. - Removed GLProfile.initSingleton(boolean firstUIActionOnProcess), use remaining GLProfile.initSingleton() - Removed NativeWindowFactory.isFirstUIActionOnProcess() - Changed NativeWindowFactory.initSingleton(boolean firstUIActionOnProcess) to NativeWindowFactory.initSingleton() The file was modified src/nativewindow/classes/jogamp/nativewindow/x11/X11Util.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/TestScreenMode00NEWT.java (diff) The file was modified src/newt/classes/com/jogamp/newt/NewtFactory.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/TestWindows01NEWT.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLProfile.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/TestRemoteWindow01NEWT.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java (diff) The file was modified src/test/com/jogamp/opengl/test/junit/newt/TestScreenMode00bNEWT.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/windows/GDIUtil.java (diff) The file was modified src/newt/classes/com/jogamp/newt/util/MainThread.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/NativeWindowFactoryImpl.java (diff) The file was added src/newt/classes/jogamp/newt/driver/x11/ScreenDriver.java The file was added src/newt/classes/jogamp/newt/driver/intel/gdl/ScreenDriver.java The file was removed src/newt/classes/jogamp/newt/driver/android/AndroidDisplay.java The file was added src/newt/classes/jogamp/newt/driver/android/DisplayDriver.java The file was removed src/newt/classes/jogamp/newt/driver/intel/gdl/Display.java The file was added src/newt/classes/jogamp/newt/driver/macosx/WindowDriver.java The file was modified src/newt/native/bcm_egl.c (diff) The file was added src/newt/classes/jogamp/newt/driver/bcm/egl/WindowDriver.java The file was removed src/newt/classes/jogamp/newt/driver/awt/AWTScreen.java The file was added src/newt/classes/jogamp/newt/driver/bcm/egl/DisplayDriver.java The file was removed src/newt/classes/jogamp/newt/driver/macosx/MacWindow.java The file was modified src/newt/native/X11Window.c (diff) The file was modified src/newt/classes/jogamp/newt/driver/android/NewtVersionActivity.java (diff) The file was removed src/newt/classes/jogamp/newt/driver/x11/X11Window.java The file was removed src/newt/classes/jogamp/newt/driver/awt/AWTWindow.java The file was removed src/newt/classes/jogamp/newt/driver/windows/WindowsDisplay.java The file was modified src/newt/native/X11Screen.c (diff) The file was removed src/newt/classes/jogamp/newt/driver/kd/Display.java The file was removed src/newt/classes/jogamp/newt/driver/bcm/egl/Screen.java The file was removed src/newt/classes/jogamp/newt/driver/bcm/vc/iv/Display.java The file was removed src/newt/classes/jogamp/newt/driver/bcm/vc/iv/Window.java The file was removed src/newt/classes/jogamp/newt/driver/intel/gdl/Window.java The file was removed src/newt/classes/jogamp/newt/driver/awt/AWTDisplay.java The file was modified src/newt/native/AndroidWindow.c (diff) The file was added src/newt/classes/jogamp/newt/driver/windows/DisplayDriver.java The file was added src/newt/classes/jogamp/newt/driver/awt/WindowDriver.java The file was added src/newt/classes/jogamp/newt/driver/awt/ScreenDriver.java The file was added src/newt/classes/jogamp/newt/driver/bcm/egl/ScreenDriver.java The file was added src/newt/classes/jogamp/newt/driver/windows/WindowDriver.java The file was modified src/newt/native/MacWindow.m (diff) The file was modified src/newt/native/X11Display.c (diff) The file was modified src/newt/classes/jogamp/newt/DisplayImpl.java (diff) The file was added src/newt/classes/jogamp/newt/driver/bcm/vc/iv/ScreenDriver.java The file was modified src/newt/classes/com/jogamp/newt/util/MainThread.java (diff) The file was added src/newt/classes/jogamp/newt/driver/bcm/vc/iv/WindowDriver.java The file was added src/newt/classes/jogamp/newt/driver/android/ScreenDriver.java The file was added src/newt/classes/jogamp/newt/driver/x11/DisplayDriver.java The file was modified src/newt/native/IntelGDL.c (diff) The file was added src/newt/classes/jogamp/newt/driver/x11/WindowDriver.java The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java (diff) The file was modified src/test/com/jogamp/opengl/test/android/MovieSimpleActivity1.java (diff) The file was removed src/newt/classes/jogamp/newt/driver/kd/Window.java The file was added src/newt/classes/jogamp/newt/driver/kd/WindowDriver.java The file was modified src/newt/native/bcm_vc_iv.c (diff) The file was added src/newt/classes/jogamp/newt/driver/bcm/vc/iv/DisplayDriver.java The file was added src/newt/classes/jogamp/newt/driver/intel/gdl/DisplayDriver.java The file was removed src/newt/classes/jogamp/newt/driver/android/AndroidWindow.java The file was removed src/newt/classes/jogamp/newt/driver/kd/Screen.java The file was removed src/newt/classes/jogamp/newt/driver/x11/X11Screen.java The file was modified src/newt/native/WindowsWindow.c (diff) The file was added src/newt/classes/jogamp/newt/driver/kd/ScreenDriver.java The file was removed src/newt/classes/jogamp/newt/driver/macosx/MacDisplay.java The file was modified src/newt/classes/jogamp/newt/driver/awt/AWTCanvas.java (diff) The file was added src/newt/classes/jogamp/newt/driver/android/WindowDriver.java The file was removed src/newt/classes/jogamp/newt/driver/x11/X11Display.java The file was modified src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java (diff) The file was removed src/newt/classes/jogamp/newt/driver/intel/gdl/Screen.java The file was removed src/newt/classes/jogamp/newt/driver/bcm/egl/Window.java The file was modified src/newt/native/KDWindow.c (diff) The file was modified src/test/com/jogamp/opengl/test/android/MovieSimpleActivity0.java (diff) The file was added src/newt/classes/jogamp/newt/driver/macosx/ScreenDriver.java The file was modified src/newt/classes/jogamp/newt/ScreenImpl.java (diff) The file was removed src/newt/classes/jogamp/newt/driver/android/AndroidScreen.java The file was removed src/newt/classes/jogamp/newt/driver/bcm/egl/Display.java The file was modified make/scripts/tests.sh (diff) The file was modified src/newt/native/X11Common.h (diff) The file was added src/newt/classes/jogamp/newt/driver/macosx/DisplayDriver.java The file was modified src/newt/classes/jogamp/newt/driver/macosx/MacKeyUtil.java (diff) The file was removed src/newt/classes/jogamp/newt/driver/macosx/MacScreen.java The file was removed src/newt/classes/jogamp/newt/driver/windows/WindowsScreen.java The file was modified make/build-newt.xml (diff) The file was added src/newt/classes/jogamp/newt/driver/intel/gdl/WindowDriver.java The file was added src/newt/classes/jogamp/newt/driver/windows/ScreenDriver.java The file was removed src/newt/classes/jogamp/newt/driver/bcm/vc/iv/Screen.java The file was added src/newt/classes/jogamp/newt/driver/kd/DisplayDriver.java The file was removed src/newt/classes/jogamp/newt/driver/windows/WindowsWindow.java The file was added src/newt/classes/jogamp/newt/driver/awt/DisplayDriver.java
Commit
c5835a2e19a84cb08957d6c742e4334d578c3c66
by Sven Gothel NativeWindowFactory.getNativeWindowType(..): Return canonical string representation allowing proper use of ref. comparison '==', instead of 'String.equals()' Also make NativeWindowFactory's instances of nativeWindowingTypePure and nativeWindowingTypeCustom static final. The file was modified src/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/NativeWindowFactoryImpl.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/GraphicsConfigurationFactory.java (diff) The file was modified src/jogl/classes/com/jogamp/opengl/util/texture/Texture.java (diff) The file was modified src/nativewindow/classes/jogamp/nativewindow/jawt/JAWTJNILibLoader.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDisplayUtil.java (diff) The file was modified src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/ThreadingImpl.java (diff) The file was modified src/newt/native/bcm_vc_iv.h (diff) The file was modified src/newt/classes/com/jogamp/newt/util/MainThread.java (diff) The file was modified make/scripts/java-win32-dbg.bat (diff) The file was modified src/newt/classes/jogamp/newt/driver/windows/WindowDriver.java (diff) The file was modified make/scripts/tests-x32.bat (diff) The file was modified make/scripts/java-win32.bat (diff) The file was modified doc/TODO.txt (diff) The file was modified doc/deployment/JOGL-DEPLOYMENT.html (diff) The file was modified doc/deployment/JOGL-DEPLOYMENT.html (diff) The file was modified doc/userguide/index.html (diff)
Commit
27e81bf4d851ce2b81763920b4d1981c6a44b42a
by Sven Gothel Fix EGLDrawableFactory ES1/ES2 detection for !pbuffer ; Misc robustness changes for GLDrawableFactory .. - EGLDrawableFactory ES1/ES2 detection for !pbuffer - isEGLContextAvailable(..) -> mapAvailableEGLESConfig(..) - handle case where no pbuffer configuration is available (nokia n9 meego ..). in such case, assume availability if onscreen profile is avail. - EGLDrawableFactory.getOrCreateEGLSharedResource(..) - avoid double creation attempt (similar to SharedResourceRunner) - EGLGraphicsConfiguration.EGLConfig2Capabilities(..) respect EGL.EGL_CONFIG_CAVEAT's EGL.EGL_SLOW_CONFIG - if EGL.EGL_SLOW_CONFIG -> no hw accel. - Fix GLContext.getRequestMajorAndCompat(..): Proper handling of ES1 and ES2 - Add abstract GLDrawableFactory.isComplete(): Only if true use the factory for 'getFactory(..)' avoid using incomplete ones. The file was modified src/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLGraphicsConfiguration.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff) The file was modified src/jogl/classes/javax/media/opengl/GLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff) The file was modified src/jogl/classes/jogamp/opengl/egl/EGLContext.java (diff)
Commit
4abaf513bcc91a2d4b3ec4842c532807cbe66167
by Sven Gothel Fix/Workaround: For BCM_VC_IV EGL (alpha) configuration Native BCM_VC_IV code CreateWindow() uses the default alpha value setting, which is alpha:8 ! Hence we require to chose alpha from the egl configurations TODO: Properly select the alpha mode in CreateWindow()! This will allow this hack. The file was modified src/newt/classes/jogamp/newt/driver/bcm/vc/iv/WindowDriver.java (diff)
Commit
6d241fc2a46413ee478985d676d2481c5a7ed119
by Sven Gothel GLContext: Remove integer-key based attach/detach object - use String based (minor API change) The integer based attachement is currently not used and since it has no benefit over the String based hash map - remove it. The file was modified src/jogl/classes/javax/media/opengl/GLContext.java (diff)
Commit
ab3ec08822e7958943686a7ba5157a4ff314e7ac
by Sven Gothel Fix Android/NEWT WindowDriver: Add missing eglDestroySurface() in closeNativeImpl(); Complete visibleChanged() in reconfigureWindowImpl() even if resize or reposition can't be handled Add missing eglDestroySurface() in closeNativeImpl() - missing egl surface destruction leaked it's resource .. Complete visibleChanged() in reconfigureWindowImpl() even if resize or reposition can't be handled - properly detect resize and reposition request, warn if this action cannot be completed but contine w/ workflow -> visibleChanged() - this allows properly handling of setVisible(..) and it's visible-changed detection polling The file was modified src/newt/classes/jogamp/newt/driver/android/WindowDriver.java (diff)
Commit
8516fe0358805e8549a96cde785dfa7ac2576e87
by Sven Gothel Fix Android Power-suspend and Power-resume NewtBaseActivity onPause()/onResume(): add setVisible(..) allowing recreation and avoid usage of unavail resources - crucial for power suspend/resume, which itself calls activity onPause()/onResume(), this ensures resources are not used onPause(). - Animator suspend is not sufficient due to surfaceRedrawNeeded(..) hook etc .. - iff power suspend leads to surfaceDestroyed(..), recreation is now possible due to setVisible(true) on onResume() even though I have not observed this on Android 2.3 and 4.0.1 Tested on Android 2.3 and Android 4.0.1 The file was modified src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java (diff) The file was modified src/test/com/jogamp/opengl/test/android/NEWTGearsES2ActivityLauncher.java (diff) The file was modified make/versions.xml (diff)