summaryrefslogtreecommitdiffstats
path: root/make
Commit message (Collapse)AuthorAgeFilesLines
* NEWT MonitorMode test cases: Add X11 XRandR commandline reset to ↵Sven Gothel2013-07-092-3/+5
| | | | | | | | UITestCase's AfterClass if available (X11). In case a MonitorMode test case fails, force XRandR reset '-s 0 -o normal' at end of test class if X11. Unit Test: TestScreenMode00cNEWT
* NEWT EDTUtil: Exposed weakness of EDTUtil usage due to usage of ↵Sven Gothel2013-07-091-3/+3
| | | | | | | | | | | | | | | | | | | | | WeakReference, i.e. higher retention of Display instances. - WeakReference Change 99479bf3197cde8e89c5b499d135417863d521c7 - Refines commits: feb352145af1643a57eaae99c0342e6f5e0f2a2e dec4b02fe4b93028c85de6a56b6af79601042d6e 433e3914324b90c910b018bb7d9d80e814c67123 Reviews EDTUtil API and usage: - less confusing / more determined EDTUtil API - EDTUtil's thread shall only be reset and started when required (-> lazy) - EDTUtil's instance in Display shall be handled thread safe w/o extra blocking - EDTUtil's implementations (Default, SWT and AWT) shall be aligned / similar as much as possible Further note: SWT's EDTUtil (NewtCanvasSWT) shall not use a reused Display instance due to it's custom SWTEDTUtil. We may need to disable the ref. cache if custom EDTUtil (setEDTUtil) is intended (used).
* Fix SWTEDTUtil regression caused by ↵Sven Gothel2013-07-051-3/+3
| | | | | | | | | | | | dec4b02fe4b93028c85de6a56b6af79601042d6e, ensuring EDT is running for reused Display instances. Refine EDTUtil semantics of: - reset() - waitUntilStopped() AWTEDTUtil/SWTEDTUtil: Properly signal !running when shutdown SWTEDTUtil: Take SWT isDisposed() into account.
* NEWT Display.create: If reusing an existing instance, ensure EDT is running!Sven Gothel2013-07-051-3/+4
|
* Fix Bug 765: Add glMultiDrawElementsBaseVertex ; Restrict PointerBuffer ↵Sven Gothel2013-07-052-2/+115
| | | | | | | | | | | | | | | | | usage to NIO only. Code snippet for PointerBuffer usage: Code snippet .. how to use PointerBuffer in this case: IntBuffer indices = Buffers.newDirectIntBuffer(count); indices.put(...); ... indices.rewind(); final PointerBuffer indicesP = PointerBuffer.allocateDirect(1); indicesP.referenceBuffer(indices); -> glMultiDrawElementsBaseVertex(int mode, IntBuffer count, int type, PointerBuffer indices, int primcount, IntBuffer basevertex)
* Fix Bug 763 and Bug 764: Proper GL gluegen for glCreateShaderProgramv and ↵Sven Gothel2013-07-051-4/+18
| | | | | | | | | | | | | | | | GL3's glDraw*Elements*. glCreateShaderProgramv: Param idx 2 should be String[] All following draw commands are buffer object types, i.e. shall accept memory buffer reference (VBO/VAO/..): +BufferObjectKind Element glDrawElementsBaseVertex +BufferObjectKind Element glDrawElementsInstanced +BufferObjectKind Element glDrawElementsInstancedBaseInstance +BufferObjectKind Element glDrawElementsInstancedBaseVertex +BufferObjectKind Element glDrawElementsInstancedBaseVertexBaseInstance BufferObjectKind Element glDrawRangeElements +BufferObjectKind Element glDrawRangeElementsBaseVertex
* NEWT: Using WeakReferences for global cache of Display, Screen and Window ↵Sven Gothel2013-07-041-2/+3
| | | | | | | | | | | | | instances; Removing ref. at API destroy() is wrong ; Allow GC to clear .. - Removing ref. at API destroy() is wrong - Since all instances can be recreated, removing ref at destroy() is simply wrong. - Keep weak references until GC collects, i.e. user does not claim them anymore. - Safe for Display, since it holds it's EDT thread. - Window/Screen .. if user abandons reference .. nothing we can do here. - Allow GC to clear .. No need to hold ref loonger than user.
* TestScreenMode*: Be more verbose setting screen mode.Sven Gothel2013-07-041-3/+3
|
* X11Window FullScreen: Toggle _NET_WM_BYPASS_COMPOSITOR not only for ABOVE .. ↵Sven Gothel2013-07-041-2/+2
| | | | but also for FULLSCREEN WM state.
* Revisit Bug 770 and Bug 771: Only use FLAG_IS_FULLSCREEN_SPAN if required; ↵Sven Gothel2013-07-041-2/+2
| | | | | | | | | | | | | At MonitoMode change, reset fullscreen if FLAG_IS_FULLSCREEN_SPAN is supported. - Bug 770: Only use FLAG_IS_FULLSCREEN_SPAN if required - If X11 WindowDriver _and_ virtual-screen-size > fullscreenViewport, - else we still use _NET_WM_STATE_FULLSCREEN on X11! - Bug 771: At MonitoMode change, reset fullscreen if FLAG_IS_FULLSCREEN_SPAN is supported - Since we may still use _NET_WM_STATE_FULLSCREEN on X11: - Pause fullscreen at monitorModeChangeNotify(..) - Resume fullscreen at monitorModeChanged(..)
* TestScreenMode* Cleanup (reset)Sven Gothel2013-07-044-8/+47
| | | | | | | | | | - TestScreenMode01aNEWT and TestScreenMode01dNEWT test auto-reset (destroying last Screen ref. reinstates orig MonitorMode) - Other tests do manual reset. - Add ant test target 'junit.run.newt.monitormode' to test only monitor-mode / fullscreen cases
* Revise commit 4c34f5980bddcdc84b10cb3bcbb96b365b9d471e (Bug 767): TAB, BS ↵Sven Gothel2013-07-033-8/+7
| | | | | | | | | and CR/ENTER are printable for NEWT KeyEvent and font handling. Fix regression. - Original behavior was treating CR/ENTER them as printable, lets keep it this way. - KeyEvent: Query these 3 whitespaces upfront, no need to incl. them in 'nonPrintableKeys'. - Fix regression: Native VK_ENTER was not change in commit 4c34f5980bddcdc84b10cb3bcbb96b365b9d471e.
* GLContext: Rename 2-digit VersionNumber statics aligning w/ all 3-digit ↵Sven Gothel2013-07-031-1/+1
| | | | names, e.g. Version31 -> Version310. ; Trim GLVersionNumber string.
* Bug 724: Add manual unit test, incr. PNGImage verbosity.Sven Gothel2013-07-021-3/+4
|
* Bug 734: Bug could not be reproduced w/ TestScreenMode02bNEWT, however on ↵Sven Gothel2013-07-022-4/+4
| | | | | | | some X11 tests systems, artifacts could be experienced. X11 Test systems w/ AMD fglrx and Intel Mesa, the rotated height is cut off .. probably due to bug of driver code and rotation.
* Fix Bug 770 and 771Sven Gothel2013-07-022-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug 770: X11Window.c: - Request focus _before_ enabling EWMH flags (fullscreen or above) after resize and temporary invisibility. This actually allows us to keep the focus after resize and repositioning! - Set _NET_WM_BYPASS_COMPOSITOR implicit analog to _NET_WM_STATE_FLAG_ABOVE - Clean up _NET_WM_* flag names, avoiding name space collisions, i.e. adding FLAG! - Remove dead _NET_WM_STATE setting via direct window property (not working anyways) - Remove dead code: FS_GRAB_KEYBOARD X11/WindowDriver.java: - Enable _NET_WM_STATE_FLAG_ABOVE temporarily if FLAG_IS_FULLSCREEN && !FLAG_IS_ALWAYSONTOP - Override focusChanged(..) to react on focus lost/gained in case of temporarily enabled _NET_WM_STATE_FLAG_ABOVE. If focus is lost, disable _NET_WM_STATE_FLAG_ABOVE, otherwise re-enable it. WindowImpl.java: - FullscreenAction.run: Always use 'FLAG_IS_FULLSCREEN_SPAN' +++ Bug 771: WindowImpl.java: - Keep fullscreenMonitors and fullscreenUseMainMonitor values intact, allowing them to be tracked. Remove duplicates in FullscreenAction class. - MonitorModeListenerImpl.monitorModeChanged: Add fullscreen path: If the changed monitor is part of fullscreenMonitors, recalculate the viewport union and reset position and fullscreen-size. - MonitorModeListenerImpl: Try to regain focus after successful mode change.
* Add Comparable<?>: Point*, Dimension*, Rectangle*, SurfaceSize* and ↵Sven Gothel2013-06-301-2/+3
| | | | | | | | | | | MonitorMode* ; Sort List<MonitorMode> in descending order to be well determined. Add Comparable<?>: Point*, Dimension*, Rectangle*, SurfaceSize* and MonitorMode*: - Compare square values - See API doc for order of special semantics (flags, rotation, ..) Sort List<MonitorMode> in descending order to be well determined: - Removes order by native mode id, give user a reliable natural order.
* Tests: Put monitor/screen mode tests to own subpackageSven Gothel2013-06-292-17/+17
|
* Tests: Fix enumeration of monitor/screen mode tests, add tests description ↵Sven Gothel2013-06-292-14/+18
| | | | to class header.
* Disable TestNewtEventModifiersNewtCanvasSWTAWT: Causes sporadic freezes on ↵v2.0.2-rc12v2.0-rc12Sven Gothel2013-06-251-2/+2
| | | | Window/Linux ..
* NEWT: Don't invoke external keyboardFocusHandler for auto-repeat keys ↵Sven Gothel2013-06-242-4/+4
| | | | | | (NewtCanvasAWT, ..) .. otherwise an auto repeated key would cause fast focus traversal, not intended.
* TestFocus0[12]SwingAWTRobot: Fix Java7 'changed behavior': Relax focus ↵Sven Gothel2013-06-242-4/+4
| | | | | | | traversal validation checks. - Remove Frame lost detection - Allow to have NEWT and it's NewtCanvasAWT claiming to have the focus
* Workaroung a Java7 AWT EDT/Robot bug: Validate whether AWT-EDT is alive ↵Sven Gothel2013-06-242-4/+4
| | | | | | | | | | | | | | | | | | | | | before certain robot ops. We have experienced that w/o utilizing AWT components, i.e. NEWT tests, the AWT-EDT 'sometimes' dies. Performing AWT robot's waitForIdle() in this situation causes a deadlock, since the call will never complete it's EventQueue.invokeAndWait() call. While analyzing this issue, we created a test tool whether the the AWT EDT is still alive. This test issues EventQueue.invokeLater( .. { flag=true; } ); and polls up until 2s for the result. Turns out that the sporadic AWT-EDT issues are solved by this test itself, i.e. it probably cause it to be reinstated. (?!) We have to observe this behavior. Another proof that quantum mechanic rules also apply in the macro cosmos :)
* TestSWTAccessor03AWTGLn: Fix SWT deadlock on Java7/Windows: Must perform AWT ↵Sven Gothel2013-06-242-7/+11
| | | | frame close on current thread ..
* scripts: osx make/test java7/6 fixesSven Gothel2013-06-246-46/+4
|
* Fix NewtCanvasAWT focus traversal for Java7 (Take 2): Commit ↵Sven Gothel2013-06-232-3/+4
| | | | | | | | | | | | 70bf3a4ec44504b86294a332255aaae8d2e86bf4 was not sufficient. Commit 70bf3a4ec44504b86294a332255aaae8d2e86bf4 did not work out on Windows. Solution now gathers the next or previous 'to be focused' component, using the FocusTraversalPolicy of the visible/focusable/enabled container. Then we simply request it's focus. Works w/ Java7 on Linux and Windows.
* Fix NewtCanvasAWT focus traversal for Java7: All unit tests fail w/ Java7, ↵Sven Gothel2013-06-231-5/+4
| | | | | | | | i.e. AWT Component's transferFocus() does nothing if component does not hold the focus. .. this seems to be violating the AWT 'spec' .. however. Workaround: Request focus before transfering it to the next/previous element.
* Fix Bug 761 (part 2/2): NEWT registers one customShutdownHook @ ↵Sven Gothel2013-06-231-3/+3
| | | | | | | | | | | | | | | | | | | | | | | NativeWindowFactory.shutdownHook head, allowing proper resource cleanup. 1 WindowImpl.shutdownAll(): - For all instances: - mark invalid (causes any user thread to disregard the window) 2 ScreenImpl.shutdownAll(): - Removed own shutdown-hook! - For all instances: - Reset ScreenMonitorState 3 DisplayImpl.shutdownAll(): - For all instances: - Remove EDT - closeNativeImpl Manually tested on X11 w/ NV and ATI Catalyst (fglrx) - DFLAGS="-Djogl.debug.GLDrawable -Dnativewindow.debug.X11Util -Dnativewindow.debug.NativeWindow -Dnewt.debug.Display -Dnewt.debug.Screen -Dnewt.debug.Window" - java $DFLAGS com.jogamp.opengl.test.junit.jogl.demos.es2.newt.TestGearsES2NEWT -time 2000 -sysExit testExit - valid arguments for sysExit: testExit, testError, displayExit, displayError
* GL*ProcAddressTable: Fix regressions: getField(..) -> getDeclaredField(..), ↵Sven Gothel2013-06-211-3/+4
| | | | incl. access check; Move getAddressFor() from ctx -> private dbg-handler (sec); FFMPEGMediaPlayer: Missed fetching func-ptr 'glTexSubImage2D'.
* Scripts: Fix new windows single unit test scripts ..Sven Gothel2013-06-215-6/+7
|
* Bug 758: Fix scripts and ant build files to work w/ Java7 (default now) ↵Sven Gothel2013-06-2135-377/+424
| | | | producing Java6 bytecode ; Apply JAR Manifest tags: Sealed, Permissions and Codebase
* Bug 757 (URL / URI conversion for file scheme, encoded path): Make certain ↵new_gl_headersSven Gothel2013-06-192-36/+36
| | | | core scripts capable of allowing a SPACE character.
* Add optional JOAL dependency, enabling JOAL usage for our 'av' package. ↵Sven Gothel2013-06-184-11/+76
| | | | | | | | | | | | | | | | | Note: May be relocated to external project later! Assumption: gluegen/ joal/ jogl/ For OpenAL / JOAL code: - use the package jogamp.opengl.openal (like jogamp.opengl.android) - will be build _before_ the other 2nd pass java files - do not expose OpenAL/JOAL APIs, if being used by other packages, since only this package is being compiled w/ JOAL jar files!
* Fix Bug 735: GLAutoDrawable must issue glViewport(..) even w/o ↵Sven Gothel2013-06-171-1/+7
| | | | | | | | | | | GLEventListener ; Optimize GLDrawableHelper's glViewportCall(..) GLAutoDrawable must issue glViewport(..) even w/o GLEventListener - Same behavior w/ or w/o GLEventListener requires to issue glViewport, always. Optimize GLDrawableHelper's glViewportCall(..) - 'private void init(..)' receives 'setViewport' argument to be passed to 'private void reshape(..)' allowing to only the the viewport once @ 'public void init(..)' and display.
* Scripts: Adapt finding gluegen ..Sven Gothel2013-06-171-2/+2
|
* Fix TestNewtKeyEventAutoRepeatAWT (Bug 688): Reduce head/tail event check to ↵Sven Gothel2013-06-171-2/+2
| | | | 2 events (Windows can't produce AR)
* Fix Bug 688: Removal of NEWT KeyEvent.EVENT_KEY_TYPED and ↵Sven Gothel2013-06-171-10/+3
| | | | KeyListener.keyTyped(KeyEvent)
* Solve Bug 735 Mystery: glViewport(..) was missing - duh :)Sven Gothel2013-06-171-2/+2
|
* Fix Bug 753: Stuttering caused by lack of GL resource synchronization ↵Sven Gothel2013-06-171-2/+3
| | | | | | | | | | | | | | | | | | | | | between Java GL- and CALayer thread ; Simplify / Fix waitUntilRenderSignal(). Stuttering caused by lack of GL resource synchronization between Java GL- and CALayer thread + // Required(?) to finish previous GL rendering to give CALayer proper result, + // i.e. synchronize both threads each w/ their GLContext sharing same resources. + // + // FIXME: IMHO this synchronization should be implicitly performed via 'CGL.flushBuffer(contextHandle)' above, + // in case this will be determined a driver bug - use a QUIRK entry in GLRendererQuirks! + gl.glFinish(); Simplify / Fix waitUntilRenderSignal() - remove loop and 'ready' condition -> nonsense - if too later, i.e. lastWaitTime+TO < now, use now+TO as max. vsync waiting time Bug735 Tests: - Make vsync, wait and ECT (exclusive context thread) configurable via main args. - Inv2*, Inv3* and Inv4*: Fluent Animation - Works w/ ECT
* Bug 735: Bug735Inv4AWT on Java7 is also stuttering!Sven Gothel2013-06-161-2/+2
|
* Bug 735: Adding Andres test cases for analysis. OSX exposes diff. odd ↵Sven Gothel2013-06-161-2/+10
| | | | behaviors - See BugXYZ test cases.
* Fix Bug 745: NPE - QTT definition shall be allowd to _follow_ SOF (frame) - ↵Sven Gothel2013-06-141-4/+3
| | | | Reference QTT via QTT[] passed to frame, validate after parsing.
* Android SDK changes: Add /build-tools/17.0.0 to PATHSven Gothel2013-06-131-1/+1
|
* TestX11DefaultDisplay: Validate the chosen default device, test only one ↵Sven Gothel2013-06-131-4/+6
| | | | GLDefault/RedSquareES1; Tested w/ Xvnc4 + build-in Mesa 4.0.4
* Adapt to GlueGen commit 1a01dce6c42b398cdd68d405828774a3ab366456Sven Gothel2013-06-113-3/+9
|
* Fix Bug 748 - PMVMatrix gluProject and gluUnProject broken w/ backingArray ↵Sven Gothel2013-06-091-1/+2
| | | | | | | | | (default) ; Also: Use FloatUtil in-place multMatrixf. PMVMatrix gluProject(..) and gluUnProject(..) don't pass their position (offset) to the multMatrixf operation - even though they are sliced. The API doc actually emphasizes this.
* Unit Tests: Group *math* tests in own test packageSven Gothel2013-06-091-4/+7
|
* GLVersionNumber.createVendorVersion(): Only test match result and ↵Sven Gothel2013-05-311-2/+2
| | | | potentially continue matching if having a pattern-match (don't loop for-ever).
* GLVersionNumber: Fix vendor version parser; Adapt to GlueGen commit ↵Sven Gothel2013-05-311-2/+3
| | | | | | | | | | | | | | | 959d6d83ec26152343d538287c02eeebf0dcf238 Adapt to GlueGen commit 959d6d83ec26152343d538287c02eeebf0dcf238: - Use only RegExp and cache default (no wrapped whitespace tokenizer) - String match: Store end-of-match and flag defined components. - Remove manual parsing, utilize VersionNumber - No need to look further for 'updated' GL version, (probably the vendor version), since we utilize the ARB version number as set at creation. Fix vendor version parser: - Cut off GL version part of versionString (fixes case where GL version was interpreted as vendor version) - Loop through remaining string until a valid version number w/ major.minor has been found
* Fix regression of commit b2802021acf8aa9b363ebef383c8dc8c8079ffa4 (Bug 711): ↵Sven Gothel2013-05-181-5/+4
| | | | | | | | | | varying in/out mapping is different in vertex/fragment shader! Vertex shader: varying -> out Fragemnt shader: varying -> in NV GLSL compiler ignored in/out direction, where ATI GLSL compiler failed (could not find gcu_Weight, due to dead code).