| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
documentation purposes
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- FullScreen
- lock parent window if child
- X11: more sophisticated EWMH FS usage
- X11: set window 'Above' before FS and at focus
- allow window WM default position at window creation
- default position { -1, -1 } as hint to native WM
to gather a suitable default position
- wait until user-pos or WM-pos reached
- reconfigureWindow*
- allow -1 values for pos/size to mark no-change
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NV_swap_group support; setSwapInterval();
resetStates()
- fixes a bug where X11GLXContext impl. resetState() !!
- marked all with @Override tag
- ensured super.resetStates() is called at end (oops)
getPlatformExtensionsStringImpl()*
- fixes a bug where X11GLXContext overrides GLContext cached GLX extension string query
- marked 'final' in GLContext to avoid bugs
- using abstract 'getPlatformExtensionsStringImpl()' called by ExtensionAvailabilityCache
Add premiliry GLX/WGL NV_swap_group support
- thought it might be a solution to sync swap of 2 windows
- none of my drivers/platforms support it, event though extension is avail on Linux
Promote setSwapInterval() (1 up)
- bumped above API up to public GLContext
- those extension should not spam the GL interfaces .. hmm
|
|
|
|
|
|
|
| |
recreation of all resources
- Release all GLDrawableFactory instances at shutdown, [re]create them at initialization
- Release GLContext resources (availability map) as well
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
changed ; Enhanced tests; Catch NV/XRANDR/GL bug
X11 fixes
- X11Screen properly uses it's display's connection
decorated in lock/unlock (for ScreenMode etc)
Ensure Screen's size is set if screenMode changed
- ScreenImpl's ScreenModeListener updates it's screen size
so 'external' changes will be detected.
Enhanced tests
- Verify more data rel. ScreenMode
Catch NV/XRANDR/GL bug
- Read TestScreenMode01NEWT/TestScreenMode01bNEWT comments
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(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. :)
|
|
|
|
|
|
|
|
|
|
|
|
| |
- don't assume size/pos change - hence don't set window's values, but wait for satisfaction
- don't send resize events on our own, just rely on the event mechanism
- fullscreen: don't wrap action around invisibility from Java, Win7 flashes otherwise.
Clients who benefit from it (X11) impl. it natively.
- fullscreen exit: validate pos/size in case of a child window, like reparenting.
Otherwise the container might gets confused (eg. AWT).
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WindowImpl::reconfigureWindowImpl
Implement proper Inset usage (window decoration size)
- Insets are either polled (updateInsets()) or event driven (insetsChanged())
- Insets are used for size/pos calculations from Java side
- Natural size/pos in NEWT is client-area, ie w/o Insets
- Adding setTopLevelPosition()/setTopLevelSize() for top-level values,
ie including insets
WindowImpl::reconfigureWindowImpl
- Use flags to pass down the requested action to the native implementation
- Impl. all native actions: visible, decoration, reparent, resize, fullscreen
- Always use size/pos in client-area space, impl. shall use Insets to tranform them
- Remove double-setting of (reparent/fullscreen), which where introduced due to buggy impl. code
- Fix return from fullscreen position: Was overwritten with FS position (0/0)
- Fix decoration change: Remove visible toggle - not required, and actually disturbing
X11Windows/WindowsWindow: Added/Fixed Insets impl.
Tests (manual):
- TestSharedContextVBOES2NEWT utilizies proper window layout using Insets
- TestParenting03bAWT uses window layout for reparenting
|
|
|
|
| |
see commit 3ea949b6a14c1ba631cb41b7439af86b21db4c05
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DefaultGLCapabilitiesChooser:
- Add penalty for opaque mismatch: dbl-buf > opaq > stencil
GLGraphicsConfigurationFactory:
- Case no-chooser && has-recommended-idx:
- Only use recommended index if caps is opaque,
otherwise use default chooser to validate translucency
NativeWindow Capabilities:
- transparent default values -> 0
Added NEWT Test: TestTranslucencyNEWT
Added command line translucency/undecorated options for TestGearsES2NEWT
|
| |
|
| |
|
|
|
|
| |
flickering
|
| |
|
|
|
|
|
|
|
|
|
| |
checks; Use swapInterval ; RedSquareES2 use VBO
RedSquareES2 use VBO.
- On Windows/NV we had to re-issue (pass down to GPU) the vertex attribute data (vertex/color),
otherwise glDrawArrays crashes .. Probably a GL impl. bug.
Hence we use VBO to minimize the data upload.
|
| |
|
| |
|
|
|
|
| |
Windows/NV)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLEventListener/Test, ..
Add original author/artist information:
Dominik Ströhlein (DemoscenePassivist)
Split GLEventListener/Test code
Add key right/left for frame +/- 120 (fwd/bwd in time)
Proper header doc formate
Minor cleanup
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
ensuring init after UI Lock
|
|
|
|
|
|
|
|
|
|
|
| |
happens on AWT-EDT
We will use the default implicit call of GLProfile.initSingleton(false).
(This is the same case as for AWT applets as.)
We shall create extra test cases for AWT + GLProfile.initSingleton(true)
to test it's stability. However .. to nail down our test instability w/ AMD's fglrx driver
we move to the default behavior.
|
|
|
|
| |
sub-class calls
|
|
|
|
|
|
|
|
|
|
| |
fluctuating NEWT tests
Add GLProfile.initSingleton(true) call for fluctuating NEWT tests
- Some of these tests even fail in the <init> state, i.e. cause a JVM stack dump
around an early GLX createContext method only when issued via Jenkins.
The Ubuntu 11.04/64bit Jenkins node runs 2 nodes (32 and 64 bit).
TODO: Find cause.
|
| |
|
| |
|
|
|
|
|
| |
This fixes the _XSend X11 error on GLX commands using AMD driver .. proper cause unknown,
but probably a race or condition or threading issue (Display usage by diff threads).
|
|
|
|
|
|
|
| |
shell.dispose()
This fixes the _XSend X11 error on GLX commands using AMD driver .. proper cause unknown,
but probably a race or condition or threading issue (Display usage by diff threads).
|
|
|
|
|
|
|
|
|
|
|
|
| |
9ed513e9a9616f6028084df4c650c8caf31ea49d
In case of exessive destroy/create (the NEWT reparenting test cases),
some dpyEDT events are slipping through the event dispatcher.
This fix uses issues more XSync on both Display connection in case of 'requestFocus'
and 'closeWindow'.
'requestFocus' also uses the dpyEDT to issue the XSetInputFocus(..), since it's EDT related.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
GL context ; GLArrayDataClient-GLSL: Check if ShaderState is attached.
ShaderState Usage/Test: Add setShaderState(GL) for pre-use attachment to the GL context
- test cases utilize ShaderState before useProgram() was invoked,
hence we need an API entry to attach the ShaderState explictly
GLArrayDataClient-GLSL: Check if ShaderState is attached.
- catch error case of non bound ShaderState to GL context
|
|
|
|
|
|
|
|
|
| |
use System.err ; TestParenting02AWT: use GearsES2
JAWTWindow.getLocationOnScreen()
- Add proper JAWT lockSurface()
- Turns out that the parent location query of a NEWT child
to an [J]AWT window didn't lock the window
|
| |
|
|
|
|
|
|
|
|
|
| |
ShaderState.getShaderState(gl)
This removes the dependency of a GLSL GLDataArray object to a specific ShaderState
and enables sharing of this VBO data, i.e. via a shared context.
Test: TestSharedContextVBOES2NEWT
|
|
|
|
| |
ctrl-c) ; Generics Coding
|
|
|
|
|
|
| |
cstr and add interleaved seg.
vboTarget is required in case of interleaved segments to allow eg. interleaved indices.
|
|
|
|
| |
VBO/attribute binding wasn't updated (VBO data written, shader change/switch attribute on same location) ; Optimized interleaved GLSL VBO binding, hence split up GLArrayHandler syncData/enableState
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(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
|