Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Success

Changes

Summary

  1. Fix GLCanvas Recreation - Regression 96af6c9bf2d683115996 (details)
  2. cleanup imports (details)
  3. Relax GLAnimatorControl, ie remove fail fast for start()/stop(), return (details)
  4. test scripts: add new AWT recreation test (details)
  5. GLCanvas: Refine access modifiers (details)
Commit 16bb638603c01e3d3ed94c63550b7c2b18ad23a2 by Sven Gothel
Fix GLCanvas Recreation - Regression 96af6c9bf2d683115996

96af6c9bf2d683115996 moved the creation of the AWTGraphicsConfiguration,
GLDrawable and GLContext to the GLCanvas constructor.
This disabled recreation, removeNotify()/addNotify() after 1st addNotify(),
since the drawable/context were already set to null.

Smart recreation, ie not destroying the resources completly:
    1 - drawable
    2 - context
    3 - AWTGraphicsConfiguration's Device (X11: Display)

is not possible, since removeNotify() is the only destroy notification
we have from AWT, which would leave the above resources open -> leak.
This is especially true for (3), since the device is created 'on the fly'.
In NEWT we use lazy creation/destroy and are able to keep the references alive.
A remodelling of AbstractGraphicsConfiguration would be required,
which indeed would be overkill.

Simple solution is to move the creation block back to addNotify()
but before 'super.addNotify()', since it needs our chosen AWTGraphicsConfiguration.

Also flagging sendReshape in addNotify().

Added test case com.jogamp.test.junit.jogl.awt.TestAWT03GLCanvasRecreate01.
The file was addedsrc/junit/com/jogamp/test/junit/jogl/awt/TestAWT03GLCanvasRecreate01.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff)
The file was modifiedsrc/junit/com/jogamp/test/junit/newt/TestRemoteWindow01NEWT.java (diff)
Commit 20dd60820257af9aef8ff3eeab1c03736252e284 by Sven Gothel
Relax GLAnimatorControl, ie remove fail fast for start()/stop(), return (boolean)success instead.
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/util/Animator.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/util/FPSAnimator.java (diff)
The file was modifiedsrc/junit/com/jogamp/test/junit/newt/TestGLWindows02NEWTAnimated.java (diff)
The file was modifiedsrc/jogl/classes/javax/media/opengl/GLAnimatorControl.java (diff)
Commit a6c7a003d42a00747f42452cfde0bd8b8537be47 by Sven Gothel
test scripts: add new AWT recreation test
The file was modifiedmake/scripts/tests-x64.bat (diff)
The file was modifiedmake/scripts/tests.sh (diff)
Commit cb83142365ddfc59fb2e494c207cba5c5a1cf3c6 by Sven Gothel
GLCanvas: Refine access modifiers
The file was modifiedsrc/jogl/classes/javax/media/opengl/awt/GLCanvas.java (diff)