diff options
-rw-r--r-- | make/scripts/tests.sh | 5 | ||||
-rw-r--r-- | src/newt/classes/jogamp/newt/driver/macosx/WindowDriver.java | 21 | ||||
-rw-r--r-- | src/newt/native/MacWindow.m | 15 | ||||
-rw-r--r-- | src/test/com/jogamp/opengl/test/junit/newt/TestDisplayLifecycle02NEWT.java | 2 |
4 files changed, 14 insertions, 29 deletions
diff --git a/make/scripts/tests.sh b/make/scripts/tests.sh index 8e7089f77..e0f0c0673 100644 --- a/make/scripts/tests.sh +++ b/make/scripts/tests.sh @@ -123,7 +123,7 @@ function jrun() { #D_ARGS="-Dnativewindow.debug.OSXUtil -Dnativewindow.debug.JAWT -Djogl.debug.GLContext" #D_ARGS="-Dnewt.debug.Window" #D_ARGS="-Dnewt.debug.Window -Djogamp.common.utils.locks.Lock.timeout=600000 -Dnewt.debug.EDT" - D_ARGS="-Dnewt.debug.Window -Djogamp.common.utils.locks.Lock.timeout=600000 -Dnativewindow.debug.OSXUtil.MainThreadChecker" + D_ARGS="-Dnewt.debug.Window -Dnewt.debug.EDT -Djogamp.common.utils.locks.Lock.timeout=600000 -Dnativewindow.debug.OSXUtil.MainThreadChecker" #X_ARGS="--illegal-access=warn" #D_ARGS="-Djogamp.debug.NativeLibrary=true -Djogamp.debug.JNILibLoader=true" @@ -952,7 +952,8 @@ function testawtswt() { # 2.4.0 Regressions # # OSX -testnoawt com.jogamp.opengl.test.junit.newt.TestDisplayLifecycle02NEWT +testnoawt com.jogamp.opengl.test.junit.jogl.acore.ect.TestExclusiveContext01VSyncAnimNEWT $* +#testnoawt com.jogamp.opengl.test.junit.newt.TestDisplayLifecycle02NEWT $* #testawt com.jogamp.opengl.test.junit.newt.event.TestParentingFocus02SwingAWTRobot $* #testnoawt com.jogamp.opengl.test.junit.newt.parenting.TestParenting01NEWT $* #testawt com.jogamp.opengl.test.junit.jogl.awt.TestBug1245JTabbedPanelCrashAWT $* diff --git a/src/newt/classes/jogamp/newt/driver/macosx/WindowDriver.java b/src/newt/classes/jogamp/newt/driver/macosx/WindowDriver.java index 631dfced9..67cd188eb 100644 --- a/src/newt/classes/jogamp/newt/driver/macosx/WindowDriver.java +++ b/src/newt/classes/jogamp/newt/driver/macosx/WindowDriver.java @@ -457,7 +457,7 @@ public class WindowDriver extends WindowImpl implements MutableSurface, DriverCl super.sizeChanged(false, width, height, true); positionChanged(false, x, y); } else { - OSXUtil.RunOnMainThread(false, false, new Runnable() { + OSXUtil.RunOnMainThread(true, false, new Runnable() { @Override public void run() { updateSizePosInsets0(getWindowHandle(), false); @@ -471,15 +471,11 @@ public class WindowDriver extends WindowImpl implements MutableSurface, DriverCl if( width>0 && height>0 ) { if( !isOffscreenInstance ) { OSXUtil.RunOnMainThread(true, false, new Runnable() { - @Override - public void run() { - setWindowClientTopLeftPointAndSize0(oldWindowHandle, - pClientLevelOnSreen.getX(), pClientLevelOnSreen.getY(), - width, height, 0 != ( STATE_MASK_VISIBLE & flags)); - } } ); - OSXUtil.RunOnMainThread(false, false, new Runnable() { @Override public void run() { + setWindowClientTopLeftPointAndSize0(oldWindowHandle, + pClientLevelOnSreen.getX(), pClientLevelOnSreen.getY(), + width, height, 0 != ( STATE_MASK_VISIBLE & flags)); updateSizePosInsets0(oldWindowHandle, false); } } ); } else { // else offscreen size is realized via recreation @@ -811,15 +807,6 @@ public class WindowDriver extends WindowImpl implements MutableSurface, DriverCl throw new NativeWindowException("Could not create native window "+Thread.currentThread().getName()+" "+this); } setWindowHandle( newWin[0] ); - if( !offscreenInstance && 0 != ( STATE_MASK_VISIBLE & flags) ) { - OSXUtil.RunOnMainThread(false, false, new Runnable() { - @Override - public void run() { - orderFront0( newWin[0] ); - } - - }); - } } catch (final Exception ie) { ie.printStackTrace(); } diff --git a/src/newt/native/MacWindow.m b/src/newt/native/MacWindow.m index ffbdc3622..064fe435a 100644 --- a/src/newt/native/MacWindow.m +++ b/src/newt/native/MacWindow.m @@ -923,27 +923,24 @@ NS_ENDHANDLER DBG_PRINT( "createWindow1.%d - %p view %p, isVisible %d\n", dbgIdx++, myWindow, myView, [myWindow isVisible]); -#if 0 - // Visible on front may lead to a deadlock on Java11 - // WindowDriver's createWindow1 caller shall issue this w/o wait - // after creation if( visible ) { - #if 0 + #if 1 + [myWindow orderFront: myWindow]; + // [myWindow performSelector:@selector(orderFront) withObject:myWindow afterDelay:0]; + #elif 0 [myWindow makeKeyAndOrderFront: myWindow]; if( NULL != parentWindow ) { [myWindow orderWindow: NSWindowAbove relativeTo: [parentWindow windowNumber]]; } - #endif - #if 1 + #else [myView setNextResponder: myWindow]; if( NULL == parentWindow ) { [myWindow orderFrontRegardless]; } else { [myWindow orderWindow: NSWindowAbove relativeTo: [parentWindow windowNumber]]; } - #endif + #endif } -#endif DBG_PRINT( "createWindow1.%d - %p view %p, isVisible %d\n", dbgIdx++, myWindow, myView, [myWindow isVisible]); diff --git a/src/test/com/jogamp/opengl/test/junit/newt/TestDisplayLifecycle02NEWT.java b/src/test/com/jogamp/opengl/test/junit/newt/TestDisplayLifecycle02NEWT.java index 2fbe88901..97a56ab2a 100644 --- a/src/test/com/jogamp/opengl/test/junit/newt/TestDisplayLifecycle02NEWT.java +++ b/src/test/com/jogamp/opengl/test/junit/newt/TestDisplayLifecycle02NEWT.java @@ -367,7 +367,7 @@ public class TestDisplayLifecycle02NEWT extends UITestCase { } - @Test + // @Test public void testDisplayCreate02() throws InterruptedException { Assert.assertEquals(0,Display.getActiveDisplayNumber()); |