I’ll see if I can compile it & subsitute it in the jar.
Meanwhile, I traced it back
org.lwjgl.opengl.Display
public static void create(…) {
…
peer_info = display_impl.createPeerInfo(pixel_format);
context = new Context(peer_info, shared_drawable != null ? shared_drawable.getContext() : null);
…
createWindow();
initContext();
…
}
private static void createWindow() … {
int window_x;
int window_y;
…
display_impl.createWindow(current_mode, fullscreen, window_x, window_y);
makeCurrent();
setTitle(title);
initControls();
setVSyncEnabled(vsync);
…
}
public static void makeCurrent() throws LWJGLException {
…
context.makeCurrent();
}
org.lwjgl.opengl.Context
public synchronized void makeCurrent() throws LWJGLException {
checkAccess();
…
current_context_local.set(this);
implementation.makeCurrent(peer_info, handle);
GLContext.useContext(this);
}
org.lwjgl.opengl.ContextImplementation
public void makeCurrent(PeerInfo peer_info, ByteBuffer handle) throws LWJGLException;
org.lwjgl.opengl.MacOSXContextImplementation
public void makeCurrent(PeerInfo peer_info, ByteBuffer handle) throws LWJGLException {
ByteBuffer peer_handle = peer_info.lockAndGetHandle();
…
}
org.lwjgl.opengl.PeerInfo
private final void lockAndInitHandle() throws LWJGLException {
doLockAndInitHandle();
}
public synchronized final ByteBuffer lockAndGetHandle() throws LWJGLException {
…
doLockAndInitHandle();
…
}
protected abstract void doLockAndInitHandle() throws LWJGLException;
org.lwjgl.opengl.MacOSXDisplayPeerInfo
protected void doLockAndInitHandle() throws LWJGLException {
…
MacOSXFrame frame = ((MacOSXDisplay)Display.getImplementation()).getFrame();
…
Canvas gl_canvas = frame.getCanvas();
initHandle(gl_canvas);
…
}
org.lwjgl.opengl.MacOSXCanvasPeerInfo
private final AWTSurfaceLock awt_surface = new AWTSurfaceLock();
protected void initHandle(Canvas canvas) throws LWJGLException {
nInitHandle(awt_surface.lockAndGetHandle(canvas), getHandle());
}
private static native void nInitHandle(ByteBuffer surface_buffer, ByteBuffer peer_info_handle) throws LWJGLException;
org.lwjgl.opengl.AWTSurfaceLock
private static native boolean lockAndInitHandle(ByteBuffer lock_buffer, Canvas canvas) throws LWJGLException;