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

Changes

Summary

  1. Update X11GLXContext.java (details)
  2. Add new class location of SWT's gtk_widget_get_window (details)
  3. MacOS: Prepare build + test on aarch64 w/o ffmpeg and SWT (details)
  4. MacOS: MacOSXCGLContext: Simplify version flags, remove Tiger, add Mojave. (details)
  5. MacOS: MacOSXCGLContext.NSOpenGLImpl.release(): Don't wait for releasing context view on MacOS >= 10.14 (deadlock) (details)
  6. MacOS: MacOSXCGLContext.drawableUpdatedNotify(): Issue updateContext() on main thread, deferred w/o wait (MacOS >= 13) (details)
  7. MacOS: NEWT: Remove keySymbol mapping using 'HIToolbox' TSMGetInputSourceProperty(), crashing on MacOS >= 13 (details)
  8. Eclipse: Update settings (details)
  9. Replace AccessController.doPrivileged() w/ SecurityUtil.doPrivileged() (details)
  10. Replace AccessController.doPrivileged() w/ SecurityUtil.doPrivileged() - via GLEmitter (details)
  11. Moved GlueGen's PlatformPropsImpl's static OSXVersion to GLContextImpl.MacOSVersion (details)
  12. JAWTUtil: Cleanup MacOS JVM and OS version flags: Private and store comparison result (details)
  13. build script: Add comment setting JDK-11, since default build is JDK-17 for Java-1.8 API. (details)
  14. Build scripts: MacOS + Windows: Use JDK-17 to build our Java-1.8 API (details)
  15. HowToBuild: adoptopenjdk -> adoptium, openjdk-11 -> openjdk-17; MacOS: min SDK version >= 11.0, description to produce fat OpenJDK libraries for x86_64 and aarch64 (details)
  16. Fix GLProfile GL2 Mapping: Only use GL3bc is available, add additional GLContext.isGL3bcAvailable() check (details)
  17. Bump make/lib/swt to SWT 4.26 (details)
  18. X11GLXContext.getPlatformExtensionsStringImpl(): Add comment from pull request regarding GLX extensions (details)
  19. SWT 4.26: Add cocoa-maxosx-aarch64 blob w/o src; Add scripts/tests-osx-aarch64.sh (details)
  20. Bump gitignore (details)
  21. SWTAccessor: Adopt to SWT 4.26 (details)
  22. NewtCanvasSWT: Remove certain DEBUG output causing an exception (details)
  23. TestNewtCanvasSWTGLn: Only dispose canvas1 at end of test, if not yet disposed (manual test case) (details)
  24. SWT tests on MacOS (w/o AWT) require '-XstartOnFirstThread' JVM argument, else they crash. (details)
  25. SWT+AWT: Ensure SWTAccessor gets called before AWT initialization on GTK/X11 to avoid "cannot register existing type 'GdkDisplayManager'" and subsequent SIGSEGV (details)
  26. SWTTestUtil: Add WaitAction2, using the EDTUtil to dispatch the display.readAndDispatch() wait action (experimental) (details)
  27. Build: Add swt.jar definition for MacOS aarch64 (details)
  28. Update test scripts: Use Java17 module jvm args: --add-opens java.desktop/sun.awt=ALL-UNNAMED --add-opens java.desktop/sun.java2d=ALL-UNNAMED (details)
  29. JAR: Add Jar module parameter 'Add-Opens: java.desktop/sun.awt java.desktop/sun.java2d', preparation for potential future Java17+ Jar Module (details)
  30. Bump oculusvs-sdk, fixed warning (details)
  31. Realign HowToBuild w/ GlueGen (Debian 11, Windows) (details)
  32. MacOS build-oculusvr: Add arm64 (details)
  33. build-test: Add jvmarg.modules for jvm [11..17) and jvm>=17 (details)
  34. Test*NewtEventModifiers*: Ensure SWT is initialized before AWT (details)
  35. NewtCanvasSWT: Drop all newtChild.getDelegatedWindow() debug output due to: null com.jogamp.newt.swt.NewtCanvasSWT.access$200(com.jogamp.newt.swt.NewtCanvasSWT) (details)
  36. JAWTWindow: Remove java.applet.Applet detection .. it's gone :-( (details)
  37. JAWTWindow: Constrain AppContextInfo creation where offscreen layer is supported (MacOS only) (details)
  38. Disable oculusvr-sdk for MacOS aarch64, fails to build (details)
  39. MacOSXCGLContext: Avoid data race on lastSetNSViewCmd, use local copy like in madeCurrent (details)
  40. MacOSXCGLDrawableFactory.canCreateGLPbuffer(): Disabled for MacOS >= 12, here > 10.14.0 (Mojave) (details)
  41. Test: MacOS: Disable automatic tests (TBD, WIP) (details)
  42. Test: Linux: Disable automatic tests (TBD, WIP) (details)
  43. check-java-major-version.sh: Use unique output to validate one class version used (52 for Java8) (details)
  44. Don't import conditional platform specific 'static' code but fully qualify names when in use, make Android d8 (Dex'ing) happy (details)
  45. Isolate SWT from core nativewindow; Android apk shall only include core nativewindow and the android specific jogl parts (make d8 'dex'ing' happy) (details)
  46. TestSharedContextVBOES2NEWT5: Try harder having the objects destroyed and taken from the GLContextShareSet map (details)
  47. JAWTWindow.invalidateNative() and .detachSurfaceLayerImpl(): Pass copy of offscreenSurfaceLayer for pending off-thread operation and immediately zero reference marking its future destruction. (details)
  48. JAWTWindow.ctor: Initialize offscreenSurfaceLayer before use (details)
  49. MacOSXCGLContext.AttachGLLayerCmd: Allow DetachGLLayerCmd to revoke the attach command, essential if attach hasn't been done yet @ detach (details)
  50. OSXMisc.m: Show semantics: caLayer -> rootCALayer (details)
  51. MacOS: JAWTWindow.layoutSurfaceLayerImpl(): Perform OSXUtil.FixCALayerLayout() on main thread and hence fetch and validate getAttachedSurfaceLayer() when needed (details)
  52. MacOS: JAWTWindow's OffscreeLayer: Show semantics in argument names and complete null checks in detachSurfaceLayerImpl(), setSurfaceScale() (details)
  53. MacOS: JAWTWindow.invalidateNative(): Use copied references in off-thread operations and zero source references upfront. (details)
  54. MacOS: JAWTWindow: Complete MacOS 12+ SIGSEGV JAW Crash Fix; This: Destroy NSWindow on MacOS main-thread (details)
  55. Minor auto formatting: @Override, .. (details)
  56. Test MouseAdapter: Use volatile qualifier to avoid reading too old values (details)
  57. AWTRobot.getClickTimeout(): NEWT Case: Return maximum(AWT, NEWT), otherwise we see click-count 2 on MacOS 12 (details)
  58. scripts/tests*.sh: Put 'ulimit -c unlimited' in root script (details)
  59. Add scripts/run-test-until-crash.sh: Used to stress test one unit test (for sporadic crashes) (details)
  60. Workaround MacOS + SWT 4.26: java.lang.NullPointerException: Cannot invoke "org.eclipse.swt.internal.cocoa.NSGraphicsContext.saveGraphicsState()" because "context" is null (details)
  61. jogl's Debug.class: Add explicit debugNotAll(..) variant to skip debugAll() (details)
  62. MacOSXCGLContext: Enable DEBUG1398 explicitly w/o debugAll() (details)
  63. MacOSXCGLContext: Fix typo in DEBUG output (details)
  64. build-test.xml junit.run.swt.awt: Add missing 'jvmarg.generic' (details)
  65. SWTAccessor.invokeOnOSTKThread(): Fix comment .. (details)
  66. TestSharedContextVBOES2SWT3: Remove unused import (details)
  67. Execute AWT's Frame.setTitle() on AWT-EDT if already visible (avoid rare deadlock) (details)
  68. Remove Windows dll-rename, adopting to cpptasks.jar change (details)
  69. tests-x64.bat: Use absolute path for LIB_DIR (commented out, using jars) (details)
  70. TestDisplayLifecycle01NEWT: Invisible window might have been moved away (Windows 10) (details)
Commit ecbd490cfaaeb44905ce3009004966c1f99a0675 by noreply
Update X11GLXContext.java
The file was modifiedsrc/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff)
Commit a85012696606080a474185fffc380e736a37eeaa by peter.chang
Add new class location of SWT's gtk_widget_get_window

In SWT version 4.20, some gtk methods moved to a new gtk3 subpackage so add
check and find it in there. Note, this new package was not exported until
SWT 4.23 (aka 3.119.0 or v4950) so intervening versions will not work when
using OSGi class loading.
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff)
Commit 4756314cf631f180aad89d54d35e51a470667a89 by Sven Gothel
MacOS: Prepare build + test on aarch64 w/o ffmpeg and SWT
The file was modifiedmake/scripts/make.jogl.all.macosx.sh (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedmake/scripts/tests-osx-x64.sh (diff)
Commit d2d1b56db362f2a5ce45e034141acb52f5254770 by Sven Gothel
MacOS: MacOSXCGLContext: Simplify version flags, remove Tiger, add Mojave.
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit b367231929a8e4d8eac53933a59a297b75ef5e58 by Sven Gothel
MacOS: MacOSXCGLContext.NSOpenGLImpl.release(): Don't wait for releasing context view on MacOS >= 10.14 (deadlock)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit 4b944d5ae8cd0040ee43fcdefa92bfe06c56518b by Sven Gothel
MacOS: MacOSXCGLContext.drawableUpdatedNotify(): Issue updateContext() on main thread, deferred w/o wait (MacOS >= 13)

updateContextRegister() stays in current thread.
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
The file was modifiedmake/stub_includes/opengl/macosx-window-system.h (diff)
The file was modifiedsrc/jogl/native/macosx/MacOSXWindowSystemInterface.m (diff)
Commit 8a2938cd36fd695dec0804997319f799ba4e4929 by Sven Gothel
MacOS: NEWT: Remove keySymbol mapping using 'HIToolbox' TSMGetInputSourceProperty(), crashing on MacOS >= 13

Perhaps we want a replacement?
Fallback code uses keyCode, i.e. dropping the current keyboard layout (-> US).
The file was modifiedsrc/newt/native/MacNewtNSWindow.m (diff)
Commit 4dfe7369d8e58978dc56235344731f927a1c8ae4 by Sven Gothel
Eclipse: Update settings
The file was modified.project (diff)
The file was modified.classpath (diff)
Commit 72a8be591d5daba1e4e231c386812c543d503fce by Sven Gothel
Replace AccessController.doPrivileged() w/ SecurityUtil.doPrivileged()
The file was modifiedsrc/jogl/classes/jogamp/graph/font/UbuntuFontLoader.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTJNILibLoader.java (diff)
The file was modifiedmake/config/jogl/glu-CustomJavaCode-gl2.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/BcmVCArtifacts.java (diff)
The file was modifiedmake/config/oculusvr/oculusvr-ovr-CustomJavaCode.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLDebugMessageHandler.java (diff)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/AppContextInfo.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGMediaPlayer.java (diff)
The file was modifiedsrc/oculusvr/classes/com/jogamp/oculusvr/OVRDynamicLibraryBundleInfo.java (diff)
The file was modifiedmake/config/jogl/glu-gl2.cfg (diff)
The file was modifiedmake/config/nativewindow/jawt-common.cfg (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/NWJNILibLoader.java (diff)
The file was modifiedmake/config/oculusvr/oculusvr.cfg (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/ThreadingImpl.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/macosx/OSXUtil.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/cg/CgDynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/Debug.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/awt/Java2D.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/graph/font/JavaFontLoader.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTUtil.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/windows/Win32SunJDKReflection.java (diff)
The file was modifiedmake/config/jogl/glu-CustomJavaCode-gl2es1.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/Debug.java (diff)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/javafx/JFXAccessor.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/util/av/impl/FFMPEGDynamicLibraryBundleInfo.java (diff)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/Debug.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/x11/glx/X11GLXDrawableFactory.java (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/GLProfile.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/x11/X11SunJDKReflection.java (diff)
The file was modifiedmake/config/jogl/cg-common.cfg (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/util/applet/JOGLNewtAppletBase.java (diff)
The file was modifiedmake/config/nativewindow/jawt-CustomJavaCode.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/NEWTJNILibLoader.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
The file was modifiedsrc/jogl/classes/com/jogamp/graph/font/FontFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/windows/wgl/WindowsWGLDrawableFactory.java (diff)
The file was modifiedmake/config/jogl/cg-common-CustomJavaCode.java (diff)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/NativeWindowFactory.java (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/NewtFactory.java (diff)
Commit 0df8f2042a1bcb1c5995c3546f1ea9ab3e844170 by Sven Gothel
Replace AccessController.doPrivileged() w/ SecurityUtil.doPrivileged() - via GLEmitter
The file was modifiedsrc/jogl/classes/com/jogamp/gluegen/opengl/GLEmitter.java (diff)
Commit 7f9c117d01f5eba1af5bf5843480f7d9ff7ce4a0 by Sven Gothel
Moved GlueGen's PlatformPropsImpl's static OSXVersion to GLContextImpl.MacOSVersion
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/GLContextImpl.java (diff)
Commit 471683eb4550af38f2186056f6094c5ea361b8b4 by Sven Gothel
JAWTUtil: Cleanup MacOS JVM and OS version flags: Private and store comparison result
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTUtil.java (diff)
Commit 629bf805104b65f312a839db1296fd5399a1f5dc by Sven Gothel
build script: Add comment setting JDK-11, since default build is JDK-17 for Java-1.8 API.
The file was modifiedmake/scripts/make.jogl.all.linux-x86_64.sh (diff)
Commit b6a10d76e0c6085ca77420730e7295341f1638b8 by Sven Gothel
Build scripts: MacOS + Windows: Use JDK-17 to build our Java-1.8 API
The file was modified.gitignore (diff)
The file was modifiedmake/scripts/make.jogl.all.win64.bat (diff)
The file was modifiedmake/scripts/make.jogl.all.ios.amd64.sh (diff)
The file was modifiedmake/scripts/make.jogl.all.macosx.sh (diff)
The file was modifiedmake/scripts/make.jogl.all.win32.bat (diff)
The file was modifiedmake/scripts/make.jogl.all.ios.arm64.sh (diff)
Commit f10f0658a8e6e91684ab07573fafe20dd87219d3 by Sven Gothel
HowToBuild: adoptopenjdk -> adoptium, openjdk-11 -> openjdk-17; MacOS: min SDK version >= 11.0, description to produce fat OpenJDK libraries for x86_64 and aarch64
The file was modifieddoc/HowToBuild.html (diff)
Commit edf0d33ba913fd37f9e6ce0a771d8dfb6fa962e6 by Sven Gothel
Fix GLProfile GL2 Mapping: Only use GL3bc is available, add additional GLContext.isGL3bcAvailable() check

Julien Gouesse resolved this odd issue, where a requested GL2 profile was mapped to GL3bc but is not implemented,
see <https://forum.jogamp.org/InternalError-XXX0-profile-2-GL2-gt-profileImpl-GL3bc-not-mapped-td4041754i20.html#a4042018>.

I exploded his patch a little to reuse the GLContext.getAvailableGLProfileName() result
and simplify the conditional statement.

This might need more testing perhaps, plus analyis why GLContext.getAvailableGLProfileName()
offers GL3bc but is not available via GLContext.isGL3bcAvailable() check.
The file was modifiedsrc/jogl/classes/com/jogamp/opengl/GLProfile.java (diff)
Commit a1514cb44f2d9e82e737cc6a6f7e3477bb0fbbcc by Sven Gothel
Bump make/lib/swt to SWT 4.26
The file was modifiedmake/lib/swt/notice.html (diff)
The file was modifiedmake/lib/swt/README.txt (diff)
The file was modifiedmake/lib/swt/gtk-linux-x86_64/src.zip (diff)
The file was removedmake/lib/swt/epl-v10.html
The file was modifiedmake/lib/swt/gtk-linux-x86_64/swt.jar (diff)
The file was modifiedmake/lib/swt/LICENSE.txt (diff)
The file was modifiedmake/lib/swt/win32-win32-x86_64/swt.jar (diff)
The file was addedmake/lib/swt/epl-2.0.html
The file was addedmake/lib/swt/win32-win32-x86_64/about_files/WebView2_LICENSE.txt
The file was modifiedmake/lib/swt/cocoa-macosx-x86_64/about.html (diff)
The file was modifiedmake/lib/swt/win32-win32-x86_64/about.html (diff)
The file was modifiedmake/lib/swt/cocoa-macosx-x86_64/src.zip (diff)
The file was modifiedmake/lib/swt/gtk-linux-x86_64/about.html (diff)
The file was modifiedmake/lib/swt/cocoa-macosx-x86_64/swt.jar (diff)
Commit a8bb3295b467d35d26bc33c11797b516ba775903 by Sven Gothel
X11GLXContext.getPlatformExtensionsStringImpl(): Add comment from pull request regarding GLX extensions

https://github.com/sgothel/jogl/pull/107

Return either glXQueryClientString or glXQueryExtensionsString when getting the GLX extensions

ndjojo:
glXQueryExtensionsString will make a request for glXQueryServerString if needed and will append the necessary client-side extensions.
This doc, under the section "Using GLS Extensions", also suggests checking the glXQueryExtensionsString before using GLX extensions.

+++

aschleck:
For some more context this came up with the release of Mesa 20.3.0,
which has client support for GLX_EXT_swap_control but no server support.
The current JOGL behavior of appending the client extensions to the server extensions is incorrect.
They should instead be intersected (with client-only extensions then appended) as the doc Nicole linked above says,
which is precisely what glXQueryExtensionsString does.
With the current extension querying behavior JOGL thinks glXSwapIntervalEXT is available under Mesa/llvmpipe
even though it is not, causing a segfault at JOGL initialization time.

I originally filed this as a Mesa bug (https://gitlab.freedesktop.org/mesa/mesa/-/issues/4128)
along with some code that repro'd JOGL's checking behavior but it became apparent that Mesa is fine and the checking behavior is incorrect.
The file was modifiedsrc/jogl/classes/jogamp/opengl/x11/glx/X11GLXContext.java (diff)
Commit d22c3f963bab9afa8fffd198362cfcda0498a381 by Sven Gothel
SWT 4.26: Add cocoa-maxosx-aarch64 blob w/o src; Add scripts/tests-osx-aarch64.sh
The file was addedmake/lib/swt/cocoa-macosx-aarch64/about.html
The file was addedmake/scripts/tests-osx-aarch64.sh
The file was addedmake/lib/swt/cocoa-macosx-aarch64/about_files/mpl-v11.txt
The file was modifiedmake/scripts/tests.sh (diff)
The file was addedmake/lib/swt/cocoa-macosx-aarch64/swt.jar
The file was addedmake/lib/swt/cocoa-macosx-aarch64/about_files/IJG_README
The file was addedmake/lib/swt/cocoa-macosx-aarch64/about_files/mpl-v20.txt
The file was modifiedmake/scripts/tests-osx-x64.sh (diff)
The file was modified.gitignore (diff)
Commit c8da0cb0b636c9f06a59c1f7ba9521b1d5f4ee65 by Sven Gothel
SWTAccessor: Adopt to SWT 4.26
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff)
Commit 3430e0abeee2e934f167edd38126450f27c7b348 by Sven Gothel
NewtCanvasSWT: Remove certain DEBUG output causing an exception

Cannot invoke "com.jogamp.newt.Window.getDelegatedWindow()" because the return value of "com.jogamp.newt.swt.NewtCanvasSWT.access$200(com.jogamp.newt.swt.NewtCanvasSWT)" is null
The file was modifiedsrc/newt/classes/com/jogamp/newt/swt/NewtCanvasSWT.java (diff)
Commit 654a3a9bb82c20b03a5286a7d9ac84c3a38923d4 by Sven Gothel
TestNewtCanvasSWTGLn: Only dispose canvas1 at end of test, if not yet disposed (manual test case)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/swt/TestNewtCanvasSWTGLn.java (diff)
Commit 4b31fa321bdf02ce87648dcb7c0034b297a9e71f by Sven Gothel
SWT tests on MacOS (w/o AWT) require '-XstartOnFirstThread' JVM argument, else they crash.
The file was modifiedmake/build-test.xml (diff)
The file was modifiedmake/scripts/tests.sh (diff)
Commit 8eb84e8234bc85f2cf096a1e24523660441d0b73 by Sven Gothel
SWT+AWT: Ensure SWTAccessor gets called before AWT initialization on GTK/X11 to avoid "cannot register existing type 'GdkDisplayManager'" and subsequent SIGSEGV
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/swt/TestNewtCanvasSWTBug628ResizeDeadlockAWT.java (diff)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff)
Commit 5fe510b9be98b8490b6ffb4e0ca0a76115f429ab by Sven Gothel
SWTTestUtil: Add WaitAction2, using the EDTUtil to dispatch the display.readAndDispatch() wait action (experimental)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/swt/TestNewtCanvasSWTGLn.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/SWTTestUtil.java (diff)
Commit 8127406b4f537d63245c2bf9febfa0997f82de6e by Sven Gothel
Build: Add swt.jar definition for MacOS aarch64
The file was modifiedmake/build-common.xml (diff)
Commit 37fbc231dba30fb9abb2466f372b95deef598bf7 by Sven Gothel
Update test scripts: Use Java17 module jvm args: --add-opens java.desktop/sun.awt=ALL-UNNAMED --add-opens java.desktop/sun.java2d=ALL-UNNAMED
The file was modifiedmake/scripts/junit-linux-armv6hf-console.sh (diff)
The file was modifiedmake/scripts/tests-x64-dbg.bat (diff)
The file was modifiedmake/scripts/make.jogl.all.linux-x86_64.sh (diff)
The file was removedmake/scripts/make.jogl.all.win32.bat
The file was modifiedmake/scripts/junit-linux-x86_64-console.sh (diff)
The file was modifiedmake/scripts/tests-javaws-x64.bat (diff)
The file was removedmake/scripts/tests-x32-dbg.bat
The file was modifiedmake/scripts/make.jogl.all.win64.bat (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedmake/scripts/tests-osx-x64.sh (diff)
The file was modifiedmake/scripts/tests-osx-aarch64.sh (diff)
The file was removedmake/scripts/tests-x32.bat
The file was removedmake/scripts/test-win32-smb_share.bat
The file was modifiedmake/scripts/make.jogl.all.macosx.sh (diff)
The file was modifiedmake/scripts/tests-x64.bat (diff)
Commit a4dd3fb979908b593e663e754b7de5f333fe85e7 by Sven Gothel
JAR: Add Jar module parameter 'Add-Opens: java.desktop/sun.awt java.desktop/sun.java2d', preparation for potential future Java17+ Jar Module
The file was modifiedmake/nativewindowversion-natives (diff)
The file was modifiedmake/newtversion (diff)
The file was modifiedmake/nativewindowversion (diff)
The file was modifiedmake/newtversion-natives (diff)
The file was modifiedmake/joglversion-natives (diff)
The file was modifiedmake/joglversion (diff)
The file was modifiedmake/joglversion-all (diff)
The file was modifiedmake/joglversion-all-natives (diff)
The file was modifiedmake/joglversion-test (diff)
Commit 4b0c0aa9612c804b1e2e434e0eed0fd4d938e16e by Sven Gothel
Bump oculusvs-sdk, fixed warning
The file was modifiedoculusvr-sdk (diff)
Commit fb82ac1c071c2e6638c1d8ecb1567fe0046aeed8 by Sven Gothel
Realign HowToBuild w/ GlueGen (Debian 11, Windows)
The file was modifieddoc/HowToBuild.html (diff)
Commit 1695e5b63b259647dc90947e69822555a3c5408c by Sven Gothel
MacOS build-oculusvr: Add arm64
The file was modifiedmake/build-oculusvr.xml (diff)
Commit c33ea9f33dd0f074464ee119e0c631b091fdeb1a by Sven Gothel
build-test: Add jvmarg.modules for jvm [11..17) and jvm>=17

jvm11: --illegal-access=warn
jvm17: --add-opens java.desktop/sun.awt=ALL-UNNAMED --add-opens java.desktop/sun.java2d=ALL-UNNAMED
The file was modifiedmake/build-test.xml (diff)
Commit 509d8a01a2655fa2a1d1e3cdf4b357bd7294fb3e by Sven Gothel
Test*NewtEventModifiers*: Ensure SWT is initialized before AWT
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersAWTCanvas.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/BaseNewtEventModifiers.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNEWTWindowAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasSWTAWT.java (diff)
Commit f76378696aa20df6bbb260d859c328c0d83f73b7 by Sven Gothel
NewtCanvasSWT: Drop all newtChild.getDelegatedWindow() debug output due to: null com.jogamp.newt.swt.NewtCanvasSWT.access$200(com.jogamp.newt.swt.NewtCanvasSWT)
The file was modifiedsrc/newt/classes/com/jogamp/newt/swt/NewtCanvasSWT.java (diff)
Commit 736a127297aa561ea5967acd66d61d494646dca3 by Sven Gothel
JAWTWindow: Remove java.applet.Applet detection .. it's gone :-(
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff)
Commit 95c3d9162693c0e655bd8764faefd8126a3ec982 by Sven Gothel
JAWTWindow: Constrain AppContextInfo creation where offscreen layer is supported (MacOS only)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/JAWTUtil.java (diff)
Commit d55cc1f40820ae93e8ab0d5930514bc33b3e6a2f by Sven Gothel
Disable oculusvr-sdk for MacOS aarch64, fails to build
The file was modifiedmake/build-oculusvr.xml (diff)
Commit 86460616271743970d1ffb2f64ee671e3deeb4cc by Sven Gothel
MacOSXCGLContext: Avoid data race on lastSetNSViewCmd, use local copy like in madeCurrent
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit 1562a6d4c71b27378612306f825c2530c938f859 by Sven Gothel
MacOSXCGLDrawableFactory.canCreateGLPbuffer(): Disabled for MacOS >= 12, here > 10.14.0 (Mojave)
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLDrawableFactory.java (diff)
Commit 9e5599b0687a27ffd1251f7c058a70b1f94324aa by Sven Gothel
Test: MacOS: Disable automatic tests (TBD, WIP)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestFBOMRTNEWT01.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestGLContextSurfaceLockNEWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/util/texture/TestJPEGJoglAWTCompareNewtAWT.java (diff)
Commit 54ed519d5000765499f7783b57d00fbe75f5f046 by Sven Gothel
Test: Linux: Disable automatic tests (TBD, WIP)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/parenting/TestParenting01dAWT.java (diff)
Commit 7f820007531da1d44c8016dbba1e2f8ade17f0e5 by Sven Gothel
check-java-major-version.sh: Use unique output to validate one class version used (52 for Java8)
The file was modifiedmake/scripts/check-java-major-version.sh (diff)
Commit 05f26f2638c2ac1cc8eab7a8b1c951020df03dd8 by Sven Gothel
Don't import conditional platform specific 'static' code but fully qualify names when in use, make Android d8 (Dex'ing) happy
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/NativeWindowFactory.java (diff)
The file was modifiedsrc/jogl/classes/jogamp/opengl/egl/EGLDrawableFactory.java (diff)
Commit 1645b44851550989736b1ec93af46d5892ec56e1 by Sven Gothel
Isolate SWT from core nativewindow; Android apk shall only include core nativewindow and the android specific jogl parts (make d8 'dex'ing' happy)
The file was modifiedmake/build.xml (diff)
The file was modifiedmake/build-test.xml (diff)
The file was modifiedmake/build-common.xml (diff)
The file was modifiedmake/build-nativewindow.xml (diff)
Commit f71abdf19bdcf3ccfcc5455cb15aff4e93d468bb by Sven Gothel
TestSharedContextVBOES2NEWT5: Try harder having the objects destroyed and taken from the GLContextShareSet map

The objects were more sticky on my MacOS 12 x86_64 machine, this double GC w/ sleep 100ms resolved it.
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2NEWT5.java (diff)
Commit 4009198e34b50bba9582be24f33eaf83b94a2cb8 by Sven Gothel
JAWTWindow.invalidateNative() and .detachSurfaceLayerImpl(): Pass copy of offscreenSurfaceLayer for pending off-thread operation and immediately zero reference marking its future destruction.
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/x11/X11JAWTWindow.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/windows/WindowsJAWTWindow.java (diff)
Commit 3c4cf1f37dc27d8d527804d195361a2287575147 by Sven Gothel
JAWTWindow.ctor: Initialize offscreenSurfaceLayer before use
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff)
Commit d969f473fdc72c6ca95f1796ff5af3f0c8bd51b6 by Sven Gothel
MacOSXCGLContext.AttachGLLayerCmd: Allow DetachGLLayerCmd to revoke the attach command, essential if attach hasn't been done yet @ detach

Otherwise a pending attach would still pass through after DetachGLLayerCmd releases the sync-lock from AttachGLCmd.

DetachGLCmd also tests 0 != nsOpenGLLayer
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit 81f395975c06a66183ad36cc43e8dc9bc7f4545b by Sven Gothel
OSXMisc.m: Show semantics: caLayer -> rootCALayer
The file was modifiedsrc/nativewindow/native/macosx/OSXmisc.m (diff)
Commit b8977465b2fb8452c2560a5d2561b2561472edf0 by Sven Gothel
MacOS: JAWTWindow.layoutSurfaceLayerImpl(): Perform OSXUtil.FixCALayerLayout() on main thread and hence fetch and validate getAttachedSurfaceLayer() when needed
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff)
Commit 470a0ff3a2efbe43404d5f80a403efb38005598a by Sven Gothel
MacOS: JAWTWindow's OffscreeLayer: Show semantics in argument names and complete null checks in detachSurfaceLayerImpl(), setSurfaceScale()
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff)
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/awt/JAWTWindow.java (diff)
Commit 9829550f5bcb586f94f98f6d3c39f4d78fd78f3b by Sven Gothel
MacOS: JAWTWindow.invalidateNative(): Use copied references in off-thread operations and zero source references upfront.

Have user being aware of disposal then triggered and not later when performed on MacOS main-thread
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff)
Commit 1711008b95534d1bf3c87570990253c0fa7cd9f6 by Sven Gothel
MacOS: JAWTWindow: Complete MacOS 12+ SIGSEGV JAW Crash Fix; This: Destroy NSWindow on MacOS main-thread

Destroy NSWindow on MacOS main-thread, avoiding spurious more rare SIGSEGV on MacOS 13/aarch64

This closes the MacOS 12+ SIGSEGV JAWT (CALayer) crash fix, see commits:
- 4009198e34b50bba9582be24f33eaf83b94a2cb8
- 3c4cf1f37dc27d8d527804d195361a2287575147
- d969f473fdc72c6ca95f1796ff5af3f0c8bd51b6
- 81f395975c06a66183ad36cc43e8dc9bc7f4545b
- b8977465b2fb8452c2560a5d2561b2561472edf0
- 470a0ff3a2efbe43404d5f80a403efb38005598a
- 9829550f5bcb586f94f98f6d3c39f4d78fd78f3b
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/jawt/macosx/MacOSXJAWTWindow.java (diff)
Commit 06b1563dc84125ab1c589499f30034162ddca0c8 by Sven Gothel
Minor auto formatting: @Override, ..
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/NEWTMouseAdapter.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestParentingFocus02SwingAWTRobot.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextWithJTabbedPaneAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/AWTMouseAdapter.java (diff)
Commit b0ac7056205ed423eab9a04417d2e9e6387cc5a0 by Sven Gothel
Test MouseAdapter: Use volatile qualifier to avoid reading too old values
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/NEWTMouseAdapter.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/AWTMouseAdapter.java (diff)
Commit d509a3d435e8357a6148617d7792f164dbd0b529 by Sven Gothel
AWTRobot.getClickTimeout(): NEWT Case: Return maximum(AWT, NEWT), otherwise we see click-count 2 on MacOS 12
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/AWTRobotUtil.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestParentingFocus02SwingAWTRobot.java (diff)
Commit 5b8f42a801de10c6b324edae0dacfbbdd2742467 by Sven Gothel
scripts/tests*.sh: Put 'ulimit -c unlimited' in root script
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedmake/scripts/tests-osx-aarch64.sh (diff)
The file was modifiedmake/scripts/tests-osx-x64.sh (diff)
Commit ae21ab3e418cb80de10dd1fd265b67bec7d2d31e by Sven Gothel
Add scripts/run-test-until-crash.sh: Used to stress test one unit test (for sporadic crashes)
The file was addedmake/scripts/run-test-until-crash.sh
Commit 7a352d3747233be44edb4333da108228ca75f0f3 by Sven Gothel
Workaround MacOS + SWT 4.26: java.lang.NullPointerException: Cannot invoke "org.eclipse.swt.internal.cocoa.NSGraphicsContext.saveGraphicsState()" because "context" is null

On MacOS 12+ and SWT 4.26 while not using AWT (-Djava.awt.headless=true, -XstartOnFirstThread),
we recently get the following Exception from SWT (suppressed):

java.lang.NullPointerException: Cannot invoke "org.eclipse.swt.internal.cocoa.NSGraphicsContext.saveGraphicsState()" because "context" is null
        at org.eclipse.swt.widgets.Widget.drawRect(Widget.java:764)
        at org.eclipse.swt.widgets.Canvas.drawRect(Canvas.java:170)
        at org.eclipse.swt.widgets.Display.windowProc(Display.java:6287)
        at org.eclipse.swt.internal.cocoa.OS.objc_msgSendSuper(Native Method)
        at org.eclipse.swt.widgets.Display.applicationNextEventMatchingMask(Display.java:5565)
        at org.eclipse.swt.widgets.Display.applicationProc(Display.java:5965)
        at org.eclipse.swt.internal.cocoa.OS.objc_msgSend(Native Method)
        at org.eclipse.swt.internal.cocoa.NSApplication.nextEventMatchingMask(NSApplication.java:92)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3983)
        at com.jogamp.opengl.test.junit.util.SWTTestUtil$WaitAction$1.run(SWTTestUtil.java:52)
        at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:183)
        at org.eclipse.swt.widgets.Display.syncExec(Display.java:5250)
        at com.jogamp.opengl.test.junit.util.SWTTestUtil$WaitAction.run(SWTTestUtil.java:63)
        at com.jogamp.opengl.test.junit.jogl.acore.TestSharedContextVBOES2SWT3.test02AsyncEachAnimator(TestSharedContextVBOES2SWT3.java:376)

This is not observed if running using AWT (-Djava.awt.headless=false).
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/swt/TestGearsES2SWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/GLTestUtil.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2SWT3.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/SWTTestUtil.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
Commit 9e9dc6d407baa893234e2f1e4a938cef27848eaa by Sven Gothel
jogl's Debug.class: Add explicit debugNotAll(..) variant to skip debugAll()
The file was modifiedsrc/jogl/classes/jogamp/opengl/Debug.java (diff)
Commit f91bd273d59eef08d8ae2d8b2a86e8ba2c8f17ac by Sven Gothel
MacOSXCGLContext: Enable DEBUG1398 explicitly w/o debugAll()
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit f8a932f932bad986c649e287fd042210341cdcbf by Sven Gothel
MacOSXCGLContext: Fix typo in DEBUG output
The file was modifiedsrc/jogl/classes/jogamp/opengl/macosx/cgl/MacOSXCGLContext.java (diff)
Commit 766b2507ddaf792e9345076e69666032d008b0bd by Sven Gothel
build-test.xml junit.run.swt.awt: Add missing 'jvmarg.generic'
The file was modifiedmake/build-test.xml (diff)
Commit f8db4cf0d7133f938b74a0c88047f8db2734e5f5 by Sven Gothel
SWTAccessor.invokeOnOSTKThread(): Fix comment ..
The file was modifiedsrc/nativewindow/classes/com/jogamp/nativewindow/swt/SWTAccessor.java (diff)
Commit be4fa1f3fc1a97ad712b8d907e611a99c2bd4c83 by Sven Gothel
TestSharedContextVBOES2SWT3: Remove unused import
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/acore/TestSharedContextVBOES2SWT3.java (diff)
Commit bd2004b140f12afeb2e2337a1b426a212b1ba492 by Sven Gothel
Execute AWT's Frame.setTitle() on AWT-EDT if already visible (avoid rare deadlock)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/parenting/NewtAWTReparentingKeyAdapter.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/awt/WindowDriver.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/awt/TestGearsES2GLJPanelAWT.java (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/awt/TestGearsES2AWT.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
Commit 6a5e104d784a09c03525d4c40d83ad4696601a67 by Sven Gothel
Remove Windows dll-rename, adopting to cpptasks.jar change
The file was modifiedmake/build-jogl.xml (diff)
The file was modifiedmake/build-oculusvr.xml (diff)
The file was modifiedmake/build-newt.xml (diff)
The file was modifiedmake/build-nativewindow.xml (diff)
Commit df73148ad769d65d2d4633c3f80deeccac90ad39 by Sven Gothel
tests-x64.bat: Use absolute path for LIB_DIR (commented out, using jars)
The file was modifiedmake/scripts/tests-x64.bat (diff)
Commit 8e1233037e130629b2406ba01852ca17310753a2 by Sven Gothel
TestDisplayLifecycle01NEWT: Invisible window might have been moved away (Windows 10)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/util/NewtTestUtil.java (diff)
The file was modifiedmake/scripts/tests-win.bat (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/newt/TestDisplayLifecycle01NEWT.java (diff)