aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* NEWT/OSX Pointer Invisible Fix: 10.6.* responder declarations & test ↵Sven Gothel2012-01-164-11/+41
| | | | | | | | | | | | | focus/isInside On OS X 10.6.8 the lack of responder method declarations (mouseEntered, ..) lead to ignore the impl. callbacks. 'isMouseInside' cannot rely on 'mouseExit'/'mouseEntered' when setMouseInvisible() is being called, deduce it manually. focusLost == mouseExit (OS X behavior), hence focusGained needs to set mouse invisible/visible in case it's requested.
* Minor Edits: Add GL_RENDERER to JoglVersion dump; Fix typo in PMVMatrix.Sven Gothel2012-01-142-4/+6
|
* test scriptsSven Gothel2012-01-143-17/+65
|
* NEWT/OSX Performance Fix: Cache CGDisplayScreenSize() result, since it's ↵Sven Gothel2012-01-133-8/+81
| | | | | | | ridiculous slow Each call to CGDisplayScreenSize() took around 6ms (5ms .. 20ms, avrg 6ms) which added up to ~2s for ~400 Screen modes.
* OSX Fix: Catch releaseImpl's glFinish() exception (DebugGL); Make ↵Sven Gothel2012-01-134-12/+42
| | | | | | | | | | | | | | GLContext.release's setCurrent(null) exception prone. Catch releaseImpl's glFinish() exception (DebugGL) glGetError() after glFinish() (eg. w/ debug pipeline) produced unknown error 0x0506 on OS X (10.7.2 NV). Make GLContext.release's setCurrent(null) exception prone Call setCurrent(null) in finalizer block to ensure it's 'released' out of the TLS even when an exception is being thrown. Make MacOSX Shared Resources 'destroy' more error prone (catch exceptions)
* OSX Fixes: bug 548 (another regression: pixelfmt), ctx creation failure -> ↵Sven Gothel2012-01-136-34/+39
| | | | | | | | | | no exception, - bug 548: Another regression: pixelfmt failed for 10.6.7 and/or software OpenGL - enforcing accelerated leads to no pixelformat, - using the NSOpenGLView defaultPixelFormat causes to SIGSEGV - ctx creation failure shall just lead to return null, no immediate exception
* Add 'AWT' in JOGL's SWT GLCanvas test case, since impl. still needs AWT ↵Sven Gothel2012-01-093-3/+11
| | | | threading (-> FIXME)
* Better unit test names for SWTSven Gothel2012-01-093-6/+6
|
* Add JOGL SWT GLCanvas unit testSven Gothel2012-01-093-4/+189
|
* minor edits / clarify SWT test descripionSven Gothel2012-01-093-5/+10
|
* SWT GLCanvas: Adapt to latest JOGL changes (init, destroy, ..), Align main() ↵Sven Gothel2012-01-092-60/+63
| | | | | | entry w/ AWT GLCanvas functionality. -
* Complete SWT GLCanvas relocationSven Gothel2012-01-091-1/+1
|
* minor editsSven Gothel2012-01-091-2/+0
|
* SWT GLCanvas: Java 1.5 clean (No @override for interfaces); Add license ↵Sven Gothel2012-01-091-133/+30
| | | | header; Remove dummy comments
* Merge pull request #41 from krisher/masterSven Gothel2012-01-093-4/+673
|\ | | | | More complete implementation of SWT GLCanvas
| * Hopefully fixed use of GLCapabilitiesChooser (I didn't realize that this was ↵Dan Krisher2011-11-141-24/+3
| | | | | | | | already handled via the proxy surface factory). Needs testing
| * [WIP] Added an SWT based GLCanvas implementation nearly identical to the AWT ↵Dan Krisher2011-11-143-4/+694
| | | | | | | | version. Modified build to produce a jogl.swt.jar, and include this in jogl.all.jar. Presently there is no unit test (just a 'main' in the jogamp.opengl.swt.GLCanvas), and this does not support correct selection of GLCapabilities (FIXME and TODO tags in the source state why).
* | Fix Bug 546: Provide more information about the systemSylvestre Ledru2012-01-091-0/+1
| |
* | Fix Bug 547: Enable others architectures under GNU/LinuxSylvestre Ledru2012-01-093-3/+135
| |
* | OSX: NW/NEWT use weak binding for Quartz and Cocoa (compatibility for 10.5)Sven Gothel2012-01-092-3/+3
| |
* | OSX: JOGL desktop DLL now uses weak binding for Quartz, Cocoa and OpenGL ↵Sven Gothel2012-01-091-3/+3
| | | | | | | | (compatibility for 10.5)
* | OSX 10.6 build fix: '-F <frameworkdir> -> -F<frameworkdir>Sven Gothel2012-01-091-2/+1
| |
* | Fix bug 548 and bug 533 - OSX [10.6] NVidia driver may require glFinish() ↵Sven Gothel2012-01-091-0/+2
| | | | | | | | before ctx release.
* | TestAWTCardLayoutAnimatorStartStopBug532: Minor edit / Uncomment Windows ↵Sven Gothel2012-01-091-4/+4
| | | | | | | | hdc/hwnd dump.
* | WindowsJAWTWindow: unlock() invalidates the 'hdc' (surfaceHandle)Sven Gothel2012-01-091-0/+1
| |
* | Dispatch the '5' GDI/WGL functions and allow using their 'wgl' variants. GDI ↵Sven Gothel2012-01-0915-203/+325
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | is the default. The following 5 GDI functions have their 'wgl' counterparts which 'shall' being used in case the OpenGL DLL is being loaded dynamically. (So reads the documentation & FAQ). This seems to be required only in case the std. opengl32.dll is not being used. This use case is called GDI/ICD. If using a non std. OpenGL DLL, is called MCD. We dynamically load the OpenGL DLL and fetch the address pointer. Since we generally use the std. opengl32.dll, our use of the GDI callbacks seems to be legal. However, to test using the 'wgl' method WGLUtil is introduced. You can test using the 'wgl' variants by defining the property: 'jogl.windows.useWGLVersionOf5WGLGDIFuncSet'. In case you have troubles, ie crashes within pixelformat setup etc, it might be interesting if this may impact your behavior. - ChoosePixelFormat(long, PIXELFORMATDESCRIPTOR) - DescribePixelFormat(long, int, int, PIXELFORMATDESCRIPTOR) - GetPixelFormat(long) - SetPixelFormat(long, int, PIXELFORMATDESCRIPTOR) - SwapBuffers(long)
* | TestAWTCardLayoutAnimatorStartStopBug532: Refine, add 'continue' mode, ..Sven Gothel2012-01-084-35/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previous commit 098398c2a9145447da5314eed9792b3738c2d515 cleaned up and fixed context/drawable lock/unlock for makeCurrent()/release()/destroy() and consistency is looks much better now in this regard. However, on Intel HD 3000 / Windows7, our AnimatorControl start/stop still let the 2nd switch to GLCanvas within the CardPanel not showing rendering results. One interesting artefact though: 1st switch 2 GLCanvas (rendering visible): *** hdc 0x2f010ec5, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] *** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] *** hdc 0x2f010ec5, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] *** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] -> alternating HDC's 2nd switch 2 GLCanvas (rendering _not_ visible): *** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] *** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] *** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] *** hdc 0x160110c4, hdw(hdc) 0x1003a0, hdw 0x1003a0 - AWT-EventQueue-0, com.jogamp.opengl.util.Animator[started true, animating true, paused false, drawable 1] -> fixed HDC Maybe this is a hint for what is going wrong in JAWTWindow locking, which aquires the frame's HDC. Verifying the recursive lock shows proper lock/unlock actions though.
* | GLContext/NativeSurface Impl's toString(): Add lock.toString()Sven Gothel2012-01-087-11/+20
| |
* | GLContext*/GLDrawableHelper: Fix consistency of recursive ↵Sven Gothel2012-01-089-264/+378
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | makeCurrent()/release()/destroy() calls ; Enable context switch tracing ; GLCanvas: proper AbstractGraphicsDevice destruction GLContext*/GLDrawableHelper: Fix consistency of recursive makeCurrent()/release()/destroy() calls Utilizing volatile and lock.tryLock(0) for lockConsiderFailFast(), reducing redundant synchronization and using RecursiveLock implicit sync. GLContext 'early-out' is the case where the thread already holds the context, ie. context is already current and the native makeCurrent is skipped. makeCurrent()'s 'early-out' w/o incr. the recursive lock of GLContext and it's NativeSurface could lead to asymetry in lock/unlock count with release()/destroy() calls. The 1st release actually released the native ctx already. Properly utilize recursive lock/unlock in all cases and impl. 'early-out' after locking. Following the above in GLDrawableHelper.invokeGL()'s 'early-out' case as well, ie calling makeCurrent()/release() symmetrical. Introduce GLDrawableHelper.disposeGL(), which issues dispose on all GLEventListeners within a current context and issued context destruction directly. This simplifies GLAutodrawable's destroy/dispose calls and ensures that the above sequence of events happens atomically (lock is being hold until destruction). Enable context switch tracing If property 'jogl.debug.GLContext.TraceSwitch' is defined, trace context switch. GLCanvas: proper AbstractGraphicsDevice destruction
* | Animator*: Clarify debug outputSven Gothel2012-01-072-6/+8
| |
* | Fix TestAWTCardLayoutAnimatorStartStopBug532 pause/resume testSven Gothel2012-01-061-1/+4
| |
* | Added Unit-Test for Bug 532 to test Animator behavior w/ CardLayout and ↵Sven Gothel2012-01-062-1/+177
| | | | | | | | diff. Platforms
* | Fix bug 549 - Incorrect calculation of count value in GLUniformData due to ↵Sven Gothel2012-01-051-3/+3
| | | | | | | | | | | | | | | | | | ignored buffer position. This was disclosed by testing agains the Intel HD 3000 GPU, resulting in an INVALID OPERATION GL error (correct). Other driver ignored this mismatch ..
* | Merge pull request #42 from WadeWalker/bug_358_ant_build_fails_in_eclipse_3_7Sven Gothel2012-01-031-5/+0
|\ \ | | | | | | Fix Eclipse 3.7 Ant build
| * | Fix Eclipse 3.7 Ant buildWade Walker2011-12-271-5/+0
|/ / | | | | | | | | | | Set Ant builder classpath to default to fix build problems. No Ant customization is needed in Eclipse 3.7+, since it includes Ant 1.8.2.
* | NEWT/Android: MonitorMode: Don't validate refreshRate (0 on some devices); ↵Sven Gothel2011-12-262-3/+6
| | | | | | | | AndroidWindow: Trigger ScreenModeChanged only if Screen is already valid.
* | ScreenImpl.ScreenMode: getOrAdd current ScreenMode.Sven Gothel2011-12-241-14/+20
| | | | | | | | | | On Gnome it happend that the current mode was not 'scanned' by RandR, hence adding it if not existing helps stability.
* | NEWT Windows/X11: Remove missed negative coordinate restrictions.Sven Gothel2011-12-244-16/+9
| |
* | NEWT Screen: Add virtual top-left origin getX()/getY() ; WindowsWindow.c: ↵Sven Gothel2011-12-2413-74/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | allow negative coordinates - ScreenImpl: - Use Point & Dimension for holding virtual origin and size - updateScreenSize() -> updateVirtualScreenOriginAndSize() - DimensionImmutable getNativeScreenSizeImpl() -> void getVirtualScreenOriginAndSize(Point virtualOrigin, Dimension virtualSize) - WindowImpl setFullscreen(true): Use Screen virtual origin - WindowsWindow.c - For x/y coords use GET_X_LPARAM/GET_Y_LPARAM which casts '(int)(short)' to preserve negative coordinates. - NewtWindow_setVisiblePosSize() allow negative coordinates
* | Fix regression of commit: 3f5df93484a2ea97c6e51a717f05d9ddcec64d84 (compile ↵Sven Gothel2011-12-231-2/+2
| | | | | | | | error, private field access)
* | NEWT/OSX MacWindow.close(): More conservative closing approach.Sven Gothel2011-12-233-7/+17
| | | | | | | | | | | | | | | | | | | | | | Closing: - Java: Set handle to null - Native: - Don't release the NSView explicit, but rely on NSWindow's release - Don't use NSWindow close() but simply call release() instead. The latter doesn't produce a crash SIGSEGV on exit in some cases. OSX 10.7.2, NV GPU
* | Screen: width/height reflects virtual Screen size (-> big-desktop)Sven Gothel2011-12-2315-72/+115
| | | | | | | | | | | | | | | | | | | | Add updateScreenSize() utilizing new getNativeScreenSizeImpl() to set/update the virtual Screen size. This replaces setScreenSize() where the ScreenMode dimension was being used which doesn't reflect the virtual size. ScreenMode Test Impact: We cannot assertEquals(sm.getRotatedWidth(), screen.getWidth()), since ScreenMode size != virtual size.
* | NEWT/X11: Fix regressions of commit ↵Sven Gothel2011-12-233-9/+13
| | | | | | | | f3f794fe37a7e33a771a4a702f3f46ead4dc6d03: Unresolved symbols. Disable VERBOSE.
* | NEWT Multi-Monitor 1/2: Allow negative window position; Validate Screen-Index;Sven Gothel2011-12-2336-1210/+1584
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Allow negative window position, using flag 'autoPosition' to mark a custom user position. This impacts Windows and X11 window creation code, which supports native auto positioning. - Screen: Validate Screen-Index. In 'big-desktop' mode the Screen index is always 0. This is true for X11 with Xinerama enabled and MS-Windows in general. Platforms w/o multiple Screen support always use index 0. - X11: Separate X11 Display/Screen/Window native code in their respective C files - Windows test scripts: use '%*' to catch all arguments - Add missing (c)
* | GLJPanel: Fix dispose of backend (J2DOGL thread, no double dispose)..,Sven Gothel2011-12-225-138/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GLJPanel: - fix dispose of backend - proper J2DOGL thread - no double dispose - remove VERBOSE - no dispose regenerate flag - add @Overrride - more safe createContext(..) impl - setSynchronized(true); for all backends - ensure AbstractGraphicsDevice close() is being called GLDrawableHelper: - Clarify w/ isDisposeAction = null==initAction GLPbufferImpl: - ensure AbstractGraphicsDevice close() is being called Java2D: - remove VERBOSE -
* | win make scripts - bump to 6u30Sven Gothel2011-12-217-13/+13
| |
* | NEWT OSX: Add native ScreenMode impl. - TODO: Programmatically set the ↵Sven Gothel2011-12-204-14/+242
| | | | | | | | | | | | | | rotation! (How to ?) Get/Set ScreenMode impl on OSX. Set is limited to resolution and size, since I don't know how to change the rotation.
* | NEWT initScreenModeStatus(): Issue setScreenSize() to update screen size ↵Sven Gothel2011-12-202-2/+13
| | | | | | | | | | | | | | | | based on native RANDR (more correct) Clarify Screen's getWidth(), getHeight() values (-> rotated) Also add DEBUG output for collected native modes and nativeIdx mapping.
* | Fix html applet test pageSven Gothel2011-12-201-2/+2
| |
* | Add Everplanes; Moved images to media subfolder. Remove obsolete Sun ↵Sven Gothel2011-12-1932-92/+66
| | | | | | | | contributor agreements and TCK license.