| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
parent,
a white window rectangle remains.
.. we also need to understand the absolute screen position better,
ie. when required and when not (at window creation currently).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- MainThread:
This class no more implements EDTUtil!
This class just provides a main-thread utility, forking of a main java class
on another thread while being able to continue doing platform specific things
on the main-thread. The latter is essential for eg. MacOSX, where we continue
to run NSApp.run().
- DefaultEDTUtil:
- if Lock.DEBUG validate that no recursive locks are being hold,
where it shall not (EDT: startup and return from task execution)
- If task execution's result wasn't waited for (checked),
at least dump exeception's stack trace if i happened.
- MacDisplay: Just use DefaultEDTUtil
- MacWindow:
- No more need of special locking -> removed nsViewLock, since:
- using proper EDT
- capability to run from multiple threads (native Java thread attachment)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Feature related:
- Added always-on-top
- Added translucency
- Child Window Position
- AWT parent: manual traverse up the tree and calc position on screen
(Problem: the parent view rect is not at the proper position,
but covers the whole frame)
EDTUtil related:
- Works now w/ AWT ot headless (again)
- OSX native JNI callbacks gathering JNIEnv properly
and attaches/detaches thread.
- AWT case: using AWT-Event which properly dispatches our cocoa events
- MainThread (headless) case: Fork off thread w/ main class
and kick off NSApp run().
This leads to same behavior as w/ AWT case.
- Using DefaultEDTUtil
- Cleanup MainThread (implements EDTUtil)
- Currently not used as EDTUtil (osx), just as launcher
- Removed EDTUtil impl code, reuse DefaultEDTUtil
- Cleanup AWTEDTUtil (implements EDTUtil)
- Currently not used as EDTUtil (osx)
|
|
|
|
| |
MacWindow: create/visible at native creation
|
|
|
|
| |
TempJarCache if used.
|
|
|
|
| |
requestFocusAWTParent()
|
|
|
|
| |
gl_nodefaultkeylistener ; Cleanup
|
|
|
|
| |
ElektronenMultiplizierer (NEWT Applet Runner)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(due to recreation) ; NEWT/Window: Remove isValid() API entry - always true!
Destruction of GLAutoDrawable shall not remove them from AnimatorControl (due to recreation)
- Completes commit b65e1e76d413b70e5593173e6bd36d30675554a6
- WindowImpl:
- volatile: windowHandle/visible fields (memeory sync critical)
- destroy must set visible := false, to avoid immediate recreation via
a display call of another thread, ie an animator.
NEWT/Window: Remove isValid() API entry - always true!
- NEWT/Window's can always be recreated.
- redundancy in API is even worse than redundancy in impl. :)
|
|
|
|
| |
child invisible again
|
|
|
|
| |
make NEWT child invisible (?)
|
|
|
|
| |
recreation is possible
|
| |
|
| |
|
|
|
|
| |
Completes commit d4670328991c02a6f11f8873ea7a2331f17d0ef0
|
|
|
|
| |
write access
|
| |
|
| |
|
|
|
|
| |
boolean, see Collection::add/remove
|
| |
|
| |
|
|
|
|
| |
NativeWindow/Newt Version since we use *all* targets
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| | |
|
|/ |
|
| |
|
|
|
|
| |
newt/classes/jogamp/newt/opengl/android
|
|
|
|
|
| |
mapped gained focus event.
used 0xFFFFFFFF for unmapped events
|
| |
|
| |
|
|\ |
|
| | |
|
|/ |
|
| |
|
| |
|
|
|
|
|
|
|
| |
makes sense)
- WindowImpl/GLWindow: Cleanup destroy code ..
- Tests: sync / remove FPS stderr print
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If GL_ARB_debug_output is not available, but GL_AMD_debug_output exist, fallback to the latter,
offering generic aliased methods translating the delta (AMD category <-> ARB source/type).
Generic aliased methods reside in GLContext*
Enable/Disable via GLContext and GLAutoDrawable.
To enable the GLDebugOutput feature GLContext.enableGLDebugMessage(true)
or GLContext.setContextCreationFlags(GLContext.CTX_OPTION_DEBUG)
shall be called _before_ context creation via GLContext.makeCurrent()!
In case GLAutoDrawable is being used,
GLAutoDrawable.setContextCreationFlags(GLContext.CTX_OPTION_DEBUG)
shall be issued before context creation via GLContext.makeCurrent()!.
After context creation, the GLDebugOutput feature may be enabled or disabled
at any time using this method.
Verify both unit tests for usability.
|
|
|
|
|
|
|
|
|
|
|
| |
API change)
- Don't fetch System.currentTimeMillis() by default and for every frame (performance)
- Default behavior is FPSCounter switched off
- Enable by frame interval, ie measure each 60 frames.
- FPSCounterImpl is default impl. used by impl. FPSCounter class (reduce code/redundancy)
- Might be promoted to GLAutoDrawable ?!
|
|
|
|
|
|
|
| |
The spec doesn't require a current context for a swap buffer call, however,
if required .. as user shall encapsulate it by himself, or use the GLEventListener model.
Motivation: Reduce TLS GLContext.getCurrent() calls.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
- Remove unsafe double checked locking
- Annotate safe double checked locking (volatile)
- use 'static final' if possible
|