diff options
author | Sven Gothel <[email protected]> | 2011-06-12 02:55:29 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2011-06-12 02:55:29 +0200 |
commit | bd1c8685d10a82108f959aae5a2f39b5570446be (patch) | |
tree | 9167079f2a4852115618c62d4282013b8769d64b /src/newt/classes/jogamp | |
parent | fec792f54c29ea86a39330f1a2adb816003443a6 (diff) |
X11/Newt Locking: Clarify dependency of XInitThreads() hack
Diffstat (limited to 'src/newt/classes/jogamp')
-rw-r--r-- | src/newt/classes/jogamp/newt/x11/X11Display.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/newt/classes/jogamp/newt/x11/X11Display.java b/src/newt/classes/jogamp/newt/x11/X11Display.java index d4a83abe0..815395e2d 100644 --- a/src/newt/classes/jogamp/newt/x11/X11Display.java +++ b/src/newt/classes/jogamp/newt/x11/X11Display.java @@ -75,9 +75,14 @@ public class X11Display extends DisplayImpl { X11Util.closeDisplay(handle); throw e; } - aDevice = new X11GraphicsDevice(handle, AbstractGraphicsDevice.DEFAULT_UNIT, NativeWindowFactory.getNullToolkitLock()); - // aDevice = new X11GraphicsDevice(handle, AbstractGraphicsDevice.DEFAULT_UNIT, NativeWindowFactory.createDefaultToolkitLockNoAWT(NativeWindowFactory.TYPE_X11, handle)); - // aDevice = new X11GraphicsDevice(handle, AbstractGraphicsDevice.DEFAULT_UNIT); + + if(X11Util.XINITTHREADS_ALWAYS_ENABLED) { + // Hack: Force non X11Display locking, even w/ AWT and w/o isFirstUIActionOnProcess() + aDevice = new X11GraphicsDevice(handle, AbstractGraphicsDevice.DEFAULT_UNIT, NativeWindowFactory.getNullToolkitLock()); + } else { + // Proper: Use AWT/X11Display locking w/ AWT and X11Display locking only w/o isFirstUIActionOnProcess() + aDevice = new X11GraphicsDevice(handle, AbstractGraphicsDevice.DEFAULT_UNIT); + } } protected void closeNativeImpl() { |