aboutsummaryrefslogtreecommitdiffstats
path: root/src/nativewindow
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2010-10-27 02:16:28 +0200
committerSven Gothel <[email protected]>2010-10-27 02:16:28 +0200
commitaed479890410e10031d96077a72a4cbdd621e6aa (patch)
tree2a7809d0fefb5b0a161f9affb3364e0051d52c1e /src/nativewindow
parentb62cc2479c49d2a9913a297bcd0375e2351f7cba (diff)
Minor: fix imports, JAWTUtil: query headless 1st (faster), NativeWindowFactory added nonAWT ToolkitLock create method
Diffstat (limited to 'src/nativewindow')
-rw-r--r--src/nativewindow/classes/com/jogamp/nativewindow/impl/jawt/JAWTUtil.java5
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java12
2 files changed, 14 insertions, 3 deletions
diff --git a/src/nativewindow/classes/com/jogamp/nativewindow/impl/jawt/JAWTUtil.java b/src/nativewindow/classes/com/jogamp/nativewindow/impl/jawt/JAWTUtil.java
index ff62c9521..9f120e9ab 100644
--- a/src/nativewindow/classes/com/jogamp/nativewindow/impl/jawt/JAWTUtil.java
+++ b/src/nativewindow/classes/com/jogamp/nativewindow/impl/jawt/JAWTUtil.java
@@ -40,7 +40,6 @@ import com.jogamp.nativewindow.impl.*;
import javax.media.nativewindow.*;
-import com.jogamp.common.util.locks.RecursiveLock;
import java.awt.GraphicsEnvironment;
import java.lang.reflect.*;
@@ -178,13 +177,13 @@ public class JAWTUtil {
}
public static void lockToolkit() throws NativeWindowException {
- if(!isJava2DQueueFlusherThread() && !headlessMode) {
+ if(!headlessMode && !isJava2DQueueFlusherThread()) {
awtLock();
}
}
public static void unlockToolkit() {
- if(!isJava2DQueueFlusherThread() && !headlessMode) {
+ if(!headlessMode && !isJava2DQueueFlusherThread()) {
awtUnlock();
}
}
diff --git a/src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java b/src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java
index a269051b1..49b398b6f 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/NativeWindowFactory.java
@@ -323,6 +323,18 @@ public abstract class NativeWindowFactory {
return NativeWindowFactoryImpl.getNullToolkitLock();
}
+ public static ToolkitLock createDefaultToolkitLockNoAWT(String type, long deviceHandle) {
+ if( TYPE_X11 == type ) {
+ if( 0== deviceHandle ) {
+ throw new RuntimeException("JAWTUtil.createDefaultToolkitLockNoAWT() called with NULL device but on X11");
+ }
+ if( !isFirstUIActionOnProcess() ) {
+ return createX11ToolkitLock(deviceHandle);
+ }
+ }
+ return NativeWindowFactoryImpl.getNullToolkitLock();
+ }
+
protected static ToolkitLock createX11AWTToolkitLock(long deviceHandle) {
try {
return (ToolkitLock) x11JAWTToolkitLockConstructor.newInstance(new Object[]{new Long(deviceHandle)});