aboutsummaryrefslogtreecommitdiffstats
path: root/src/newt/classes/jogamp
Commit message (Collapse)AuthorAgeFilesLines
* Workaround (Fix) for Bug 502: Multithreading issue w/ libX11 1.4.2 and ↵Sven Gothel2011-08-302-13/+40
| | | | | | | | | | | | | | | | | | | | | libxcb 1.7 bug 20708 See https://jogamp.org/bugzilla/show_bug.cgi?id=502 Since the libX11/xcb code doesn't seem to be fixed anytime soon a better usable workaround is required than using a system property to enable 'over locking'. It turns out that the race condition is related to the parallel X11 Display connection usage of GLX/OpenGL and event dispatching. This workaround utilizes 2 X11 Display handles, one for windowing/OpenGL and one for event dispatching. This approach allows us to cont. multithreading use w/o locking the display and works on both implementations, the old bug-free libX11 and the 'new' buggy one. Downside is the little resource overhead of the 2nd X11 Display connection .. well. - Removes the property: 'nativewindow.x11.mt-bug'
* NEWT/ScreenMode: Fix Bug 456 - Reset to orig ScreenMode when exit (normal or ↵Sven Gothel2011-08-242-34/+83
| | | | ctrl-c) ; Generics Coding
* Cleanup: Java Generics Use and Removed Unused MethodsSven Gothel2011-08-241-1/+0
|
* NewtVersionActivity: Remove 'gears' test; Version Info: Drop ↵Sven Gothel2011-08-222-19/+17
| | | | NativeWindow/Newt Version since we use *all* targets
* Misc Rename/Reloc; GLArrayData*/PMVMatrix enhancments; Test fixes/adds ↵Sven Gothel2011-08-222-424/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (GearsES1/ES2) rename/reloc: - javax.media.nativewindow.util: DimensionReadOnly -> DimensionImmutable PointReadOnly -> PointImmutable RectangleReadOnly -> RectangleImmutable unified 'immutable' name as used within jogamp already - remove array handler from public API com.jogamp.opengl.util.GL*ArrayHandler -> jogamp.opengl.util.GL*ArrayHandler - GLArrayData: Clarify method names getComponentNumber() -> getComponentCount() getComponentSize() -> getComponentSizeInBytes() getElementNumber() -> getElementCount() getByteSize() -> getSizeInBytes() - FixedFuncPipeline: Moved def. array names to GLPointerFuncUtil enhancement: - GLArrayDataServer: Add support for interleaved arrays/VBO - GLArrayData*.createFixed(..) remove 'name' argument (non sense for fixed function) - PMVMatrix: - one nio buffer - removed 'Pmv' multiplied matrix - removed 2x2 cut down 'Mvi' normal matrix (use 4x4 Mvi) - tests: - RedSquare -> RedSquareES1/RedSquareES2 - Gears ES1 fixed + ES2 added. Both work properly and share common Gears VBO construction - Added TestMapBuffer01NEWT, testing glMapBuffer
* NEWT/Android: Assisting NEWTBaseActivity to simplify NEWT/Android usage.Sven Gothel2011-08-112-44/+106
|
* NEWT/Android Fix: Display/Screen/Window creation ; ScreenMode ChangeSven Gothel2011-08-115-103/+95
| | | | | | | | | | | | | | | | | | | - Remove Application Context notion in Screen/Display, use 'jogamp.common.os.android.StaticContext' - Display, Screen and Window construction is Android agnostic allowing simple GLWindow creation. - Android ScreenMode Fix: - Use unrotated screen dimension - Intercept 'orientation' configChange, which keeps running the application in case of a rotation. - ScreenMode Add: getRotatedWidth() / getRotatedHeight(), used for Screen.setScreenSize(..) which reflects the rotates dimension. - ScreenMode: getCurrentMode() allows new, not yet detected, ScreenModes
* Add touch event propagation to NEWTSven Gothel2011-08-091-13/+9
|
* Add AndroidWindow implementationSven Gothel2011-08-091-71/+183
|
* Merge remote-tracking branch 'rsantina/master'Sven Gothel2011-08-091-21/+6
|\
| * Merge branch 'master' of http://github.com/sgothel/joglRami Santina2011-08-0535-43/+587
| |\
| * | Fix: event mapping mismatchRami Santina2011-08-051-2/+2
| | |
| * | add multitouch getPointerId dataRami Santina2011-08-041-21/+6
| | |
* | | Android: Demo NewtVersionActivitySven Gothel2011-08-092-6/+471
| | |
* | | NEWT: Make AndroidNewtEventFactory public / accessibleSven Gothel2011-08-091-6/+6
| | |
* | | NEWT Android Display/Screen driver implementationSven Gothel2011-08-092-24/+117
| | |
* | | Complete Android driver reloc (constructor)Sven Gothel2011-08-093-11/+21
| | |
* | | reloc files: NEWT Android driver, demos OneTriangleSven Gothel2011-08-094-84/+0
| | |
* | | incr. debug output (tests)Sven Gothel2011-08-071-0/+1
| | |
* | | Android: cosmeticsSven Gothel2011-08-061-12/+0
| | |
* | | Android hacks: ClassLoaderUtil (vie Dex.., w/ native libs) ; Merged big jar ↵Sven Gothel2011-08-054-69/+85
| |/ |/| | | | | ; eglGetDevice(0) fails
* | Complete Android cleanup (compile/apk launch)Sven Gothel2011-08-057-0/+538
| |
* | deployment resturcturing: combine nativewindow/jogl/newt ; newt: 'driver' ↵Sven Gothel2011-08-0528-43/+49
|/ | | | | | | | | | | | | | | | | | | | | separation ; android cleanup remaining all-in-one jnlp's / jars: jogl-all-awt.jnlp -> jogl.all.jar jogl-all-noawt.jnlp -> jogl.all-noawt.jar jogl-all-mobile.jnlp -> jogl.all-mobile.jar native for all above: jogl-all-natives-linux-amd64.jar jogl.all-android.apk jogl.all-android.jar more may follow for each supported platfrom ++++ - newt: proper 'driver' separation - all drivers reside now in jogamp.newt.driver.* - remove intptr.cfg / use gluegen's
* Renamed jogamp.newt.opengl -> jogamp.newt.egl, properly reflecting EGL ↵Sven Gothel2011-08-0310-10/+10
| | | | | | dependency, not OpenGL The native impl packages utilize EGL, not opengl, to query the proper pixelformat.
* Hide NEWT AWT Event implementation details to jogamp.newt.awt.eventSven Gothel2011-08-023-0/+352
|
* Isolate android implementation details to ↵Sven Gothel2011-08-021-0/+175
| | | | newt/classes/jogamp/newt/opengl/android
* Refine some DEBUG code (verbosity)Sven Gothel2011-08-011-3/+7
|
* NEWT ScreenModes: Add current ScreenMode if none could be collected.Sven Gothel2011-07-311-1/+12
| | | | | | On Linux/ARMv7 (Ubuntu 11.04) it appears that the native RnR methods could not collect ScreenModes. In such case, at least we add the current mode as a fallback. This allows using the current mode information.
* Woraround for bug 502: X11/NEWT Stalling due to libX11/XCB Multithreading ↵Sven Gothel2011-06-261-1/+1
| | | | | | | | | bug (libX11 1.4.2, libXCB 1.7; ubuntu 11.04, ..) - https://jogamp.org/bugzilla/show_bug.cgi?id=502 - set the boolean property 'nativewindow.x11.mt-bug' to 'true', indicating the erroneous libX11/libXCB behavior. This will enable extensive X11 locking even in NEWT.
* X11/Newt Locking: Clarify dependency of XInitThreads() hackSven Gothel2011-06-121-3/+8
|
* Newt Window: Missing change of f47230cb4649df13260ac56c5dae6c01dad7c1e7 ↵Sven Gothel2011-04-261-6/+0
| | | | (remove invalidate())
* Newt Window: Remove 'invalidate()' method, only 'destroy()' is required (and ↵Sven Gothel2011-04-262-140/+56
| | | | | | | makes sense) - WindowImpl/GLWindow: Cleanup destroy code .. - Tests: sync / remove FPS stderr print
* Cleanup (private access for inner classes)Sven Gothel2011-02-281-37/+40
| | | | | | | | | | Partially revert commit 5681c25cfd4c7abce7d653910c9aa7a4e989057e - revert all window feature (visible, fullscreen, ..) runOnEDT calls to wait:=true, it turns out we loose stability and predictable behavior otherwise. - a user must ensure no calling these modifier methods from a locked window state, as documented (and changed) in commit 481285c3d19d0a4c019cffc72b7a8b58296b748e
* NEWT WindowImpl EDT fixesSven Gothel2011-02-281-106/+93
| | | | | | | | | | | - all features intended to run on EDT and lock the surface shall only allowed to wait for result, if the surface is unlocked. Otherwise don't wait - ie a pending operation. - proper sequence of all feature Runnables, ie include pre/post lock actions in Runnable, since it might be a pending task (see above). This shall avoid deadlocks cause by user code where features are called (visible, fullscreen, ..) when invoked within a locked surface code path - ie GLAutoDrawable.invoke(boolean wait, GLRunnable glRunnable).
* NEWT EDT: Fix dbl-chk-locking, runOnEDT fast-path, enqueEvent dispatch ↵Sven Gothel2011-02-281-18/+29
| | | | immed. if on EDT
* NEWT: enqueueEvent(wait, ..) can't wait if on EDT. Solves UI close, etcSven Gothel2011-02-281-0/+3
|
* Code cleanup: override, imports, StringBuilder, ..Sven Gothel2011-02-2614-17/+87
|
* Clean/Fix: Threading CodeSven Gothel2011-02-261-20/+25
| | | | | | - Remove unsafe double checked locking - Annotate safe double checked locking (volatile) - use 'static final' if possible
* Avoid NPE (pairs with 6188d6a385056adade49fcb6d8247f94f96d402e)Sven Gothel2011-02-251-4/+5
|
* Avoid NPE, incr. test poll, ..Sven Gothel2011-02-251-8/+8
|
* NativeWindow NativeSurface lock/unlock Surface cleanup ; NEWT WindowImpl ↵Sven Gothel2011-02-221-15/+28
| | | | | | | | | lock/unlock Surface fix - Rename lock to surfaceLock to determine it's use - NEWT's WindowImpl windowLock usage is not sufficient for lock/unlock surface. Using distinguished surfaceLock for proper recursion count on lock/unlock surface.
* Cleanup NEWT MainThread, using new AWTEDTUtil impl. / Sync AWTCanvas with ↵Sven Gothel2011-02-225-155/+238
| | | | | | | | | | GLCanvas changes Cleanup NEWT MainThread, using new AWTEDTUtil impl. - Allow simple singleton AWTEDTUtil to be used for AWTDisplay and more .. Sync AWTCanvas with GLCanvas changes - Latest GLCanvas changes around addNotify() had to be synced
* NativeWindow ProxySurface Abstraction and lock/unlock Surface cleanupSven Gothel2011-02-222-23/+30
| | | | | | | | | | | | | - ProxySurface -> abstract javax.media.nativewindow.ProxySurface, implemented by jogamp.nativewindow.WrappedSurface, just wrapping surface handle jogamp.nativewindow.windows.GDISurface, using HWND and get/release HDC on lock/unlock - Unifying NativeSurface's lockSurface/unlockSurface implementations - NEWT's WindowImpl - NativeWindow's ProxySurface, WrappedWindow, GDIWindow and JAWTWindow - wingdi/GDI: Add 'WindowFromDC' and 'GetClientRect' to GDI
* Fix: Java 1.5 warningsSven Gothel2011-02-091-1/+1
|
* Move implementation private files from com.jogamp.<module>.impl. to ↵Sven Gothel2011-02-0932-84/+84
| | | | | | | | | | | | | | | jogamp.<module> (2/2) - edit files - com.jogamp.opengl.impl -> jogamp.opengl - com.jogamp.opengl.util.glsl.fixedfunc.impl -> jogamp.opengl.util.glsl.fixedfunc - com.jogamp.nativewindow.impl -> jogamp.nativewindow - com.jogamp.newt.impl -> jogamp.newt This sorts implementation details from the top level, ie skipping the public 'com', allowing a better seperation of public classes and implementation details and also reduces strings. This approach of public/private seperation is also used in the OpenJDK.
* Move implementation private files from com.jogamp.<module>.impl. to ↵Sven Gothel2011-02-0832-0/+7398
jogamp.<module> (1/2) - rename task - com.jogamp.opengl.impl -> jogamp.opengl - com.jogamp.opengl.util.glsl.fixedfunc.impl -> jogamp.opengl.util.glsl.fixedfunc - com.jogamp.nativewindow.impl -> jogamp.nativewindow - com.jogamp.newt.impl -> jogamp.newt This sorts implementation details from the top level, ie skipping the public 'com', allowing a better seperation of public classes and implementation details and also reduces strings. This approach of public/private seperation is also used in the OpenJDK.