Swing has 3 code paths for showing tooltips:
- Lightweight tooltips (which can be disabled using javax.swing.ToolTipManager#setLightWeightPopupEnabled(false) )
- Medium tooltips, which are used when the tooltip fits completely within the bounds of the application frame
- Heavyweight tooltips, which are used when the tooltip overlaps with an area outside the bounds of the application frame.
On OS X using JDK8, the medium tooltips are painted behind the GLCanvas when not using the Aqua look and feel (the reason that it works with the Aqua look and feel is that the Aqua look and feel uses its own PopupFactory instance).
A reproducible program can be found on StackOverflow (http://stackoverflow.com/q/37001959/1076463), together with screenshots illustrating the problem.
The StackOverflow also contains a dirty workaround to enforce the use of heavyweight tooltips instead of medium tooltips. The workaround uses reflection, so it would be nice if I no longer need this workaround and the issue gets fixed in JOGL.
I just created a new build locally from the master branch on Github with patch https://jogamp.org/bugzilla/attachment.cgi?id=786 applied.
After only replacing jogl-all-natives-macosx-universal.jar in my project with the build/jar/jogl-all-natives-macosx-universal.jar from the custom build, this issue goes away.