| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Bug 1178 cc10: We no longer throw an ExceptionInInitializerError
when X11 is not available.
Fix 1178 cc10: We need to use an X11 resource in the constructor
in order to throw an ExceptionInInitializerError if X11 is not available.
We can resolve this by query for the X11 display and screen inside the constructor.
Signed-off-by: Xerxes Rånby <[email protected]>
|
|\ |
|
| |
| |
| |
| | |
report 1042
|
| |
| |
| |
| | |
the bug report 1042
|
| | |
|
| |
| |
| |
| | |
report 1042
|
| | |
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
alwaysOnBottom and sticky/all-desktop (Part 1)
Change also implements Bug 1186: 'NEWT Window: Use a Bitfield holding all state flags and expose it accordingly',
since it is essential for an efficient implementation.
Part 1:
- Bug 1186
- Using Bitfield, holding public (Window) and private state bits/mask
- Bug 1188
- Window adds:
- [is|set]AlwaysOnBottom(..),
- [is|set]Resizable(..),
- [is|set]Sticky(..),
- [is|set]Maximized(..),
- isChildWindow(),
- Full implementation for X11
- TODO: Implement for OSX and Windows
- Manual tests:
- TestGearsES2NEWT, TestGearsES2NEWTSimple and TestGearsES2NewtCanvasAWT
utilize new NewtDemoListener, which has a key-listener to perform
all [new] actions. See source code of NewtDemoListener.
|
|
|
|
|
|
|
|
|
|
|
| |
desktop mapping as well.
Commit 35622a7cef4a28ce7e32bf008ef331d9a0d9e3e2 introduced GLProfile.disableOpenGLDesktop,
as enabled by system property 'jogl.disable.opengldesktop'.
Desktop OpenGL shall also be disabled within EGLDrawableFactory.
Provide verbose DEBUG info for all disabled desktop OpenGL cases.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to return 'int[]'
Certain native RandR13 functions shall return 'int[]',
but will bail out early in case of an error or lack of resources.
The latter is true for getMonitorDeviceIds(..)
where 'XRRScreenResources->ncrtc <= 0', causing return value NULL.
This patch handles the NULL return values,
however, the root cause of having 'XRRScreenResources->ncrtc <= 0'
_occasionally_ lies within the Raspi X11 driver I am afraid?!
|
| |
|
|
|
|
| |
booleans)
|
|
|
|
| |
047e9adaf2a5f51f7acfa194a744c99b6bfadaea)
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
NEWT EDT
cc9: Pressing Maximize locks-up the NEWT EDT
Workaround cc9: Prevent the overlay to reposition the underlay.
Signed-off-by: Xerxes Rånby <[email protected]>
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
cc7: the UnderlayTracker needs to be engineered to handle multiple overlays
-> need to spawn one X11 window for each new overlay.
Signed-off-by: Xerxes Rånby <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| | |
1178 cc8: The bcm.vc.iv mousepointer is not updating _visible_
position during DRAGGED events.
Fix cc8: update bcm.vc.iv WindowDriver doMouseEvent
Signed-off-by: Xerxes Rånby <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rename window -> underlayWindow.
Fix indentation, long lines & whitespace.
Bug 1178 cc4: another window overlaps NEWT underlay window -> overlay window is still on top.
Fix 1178 cc4: we can request the NEWT underlay window to use always on top.
Bug 1178 cc6: if you render the overlay window transparent -> caps.setBackgroundOpaque(false);
then you will see that the underlay tracker window newer repaints -> looks a bit like a mess.
Attempted fix 1178 cc6: x11 underlay tracker window can be set transparent as well.
FIXME: The underlay tracker window is still filled with opaque garbage.
Signed-off-by: Xerxes Rånby <[email protected]>
|
| |
| |
| |
| | |
Signed-off-by: Xerxes Rånby <[email protected]>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
driver/x11/X11UnderlayTracker
Using NEWT to initialize an X11 window for use by Raspberry Pi users
to handle mouse and keyboard input when using the bcm.vc.iv driver inside xorg.
newt/driver/bcm/vc/iv/WindowDriver
Try use X11UnderlayTracker as input for bcm.vc.iv
If X11 fail to initialize then
track using the /dev/event files directly
using the LinuxMouseTracker.
Input source is switched inside bcm/vc/iv/WindowDriver
by using the new
newt/driver/KeyTracker
newt/driver/MouseTracker
interfaces.
Signed-off-by: Xerxes Rånby <[email protected]>
|
| |
| |
| |
| | |
classes)
|
| |
| |
| |
| | |
throwing a RuntimeException
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
WebStart)
Root cause:
JAWTWindow's JAWTComponentListener 'isShowing'
state is initialized while attaching it on-thread
and updated via hierarchy-changed event.
JAWTComponentListener attachment to the component
is issued at JAWTWindow's creation but on the AWT-EDT,
hence it may happen at a later time.
In this bug scenario, it happens very late,
so that the hierarchy-changed event is missed
and 'isShowing' is never set to 'true'.
Solution is to update 'isShowing' state
on the actual AWT-EDT when attaching to the component.
Also make 'isShowing' volatile.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
AWT-EDT on Java >= 1.8.0_45
Root cause:
- AWT Toolkit global Lock
Our locking scheme (AWT-EDT-1):
- Surface Lock
- sun.awt.SunToolkit.awtLock()
- Component.getGraphicsConfiguration() -> synchronized(Component.getTreeLock())
Other AWT-EDT-2 by Webstart:
- synchronized(Component.getTreeLock())
- sun.awt.SunToolkit.awtLock()
Results in a deadlock.
Solution:
- Issue Component.getGraphicsConfiguration() before awtLock(),
where Component.getGraphicsConfiguration() is being used to
detect possible reconfiguration.
- Also use updated AWTGraphicsConfiguration's GraphicsConfiguration
if no 'new' detection is required.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
when reconfigured.
JOGL AWT Components, e.g. GLCanvas or NewtCanvasAWT,
may be reconfigured by moving them to another display/monitor
or by other means.
Since AWT has no means to notify the user code via an event,
JOGL components usually determine the reconfiguration via
the override 'GraphicsConfiguration getGraphicsConfiguration()'.
GLCanvas is sensible to this reconfiguration,
however its AWTGraphicsConfiguration (owned via JAWTWindow)
is not changed.
Implement reconfiguration detection for all JOGL AWT Components
and update the AWTGraphicsConfiguration if required.
For now, constraint reconfiguration on GraphicsDevice change
as currently implemented in GLCanvas.
The updated AWTGraphicsConfiguration allows using the updated
GraphicsDevice as it might be required for further information,
e.g. pixel-scale on OSX.
|
| |
| |
| |
| | |
assertion checks and latter test uses FloatBuffer
|
| |
| |
| |
| | |
BUTTON1_MASK instead of BUTTON1_DOWN_MASK
|
| |
| |
| |
| | |
in slave-creation (causes failure on windows)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
+ // We cannot use EventQueue.invokeAndWait(..) since it will
+ // block this will block the current thread, holding the context!
+ // The whole issue w/ an external shared context is make-current
+ // synchronization. JOGL attempts to lock the surface/drawable
+ // of the master context to avoid concurrent usage.
+ // The semantic constraints of a shared context are not well defined,
+ // i.e. some driver may allow creating a shared context w/ a master context
+ // to be in use - others don't.
+ // Hence it is up to the user to sync the external master context in this case,
+ // see 'masterLock' of in this code!
+ // EventQueue.invokeAndWait(initializer);
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Unit test for bug 1160: context sharing between external GL context and offscreen drawable
|
| | |
| | |
| | |
| | | |
external GL context
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
tool-tip within JDialog
Test passes on GNU/Linux X11 and Windows - both using NVidia driver.
Unit test is based on Robin Provost's code as attached in Bug 1158.
|
| | | |
|
| | |
| | |
| | |
| | | |
allow reset origin of location-sensor
|
| | | |
|
| | |
| | |
| | |
| | | |
argument constraints -> Exceptions
|
| |/
|/|
| |
| | |
as w/ Uri usage
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note: The ovrd server must run, otherwise no device is being detected.
General Stereo API Changes:
- EyePose -> ViewerPose
- We only use the viewer pose and derive the pupile position
via EyeParameter.
- Hence we reduce complexity.
- A single ViewerPose will be maintained by StereoDeviceRenderer
- position is in meter, allowing StereoGLEventListener to scale
device independent.
- StereoDevice receives knowledge of certain sensors,
to be queried and used for start-sensors.
OVR:
- Simply apply the above general changes
- Build: Remove [more] unused API entries for SDK rendering
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes libnewt.so: undefined symbol: bcm_host_init"
when the NEWT Screen is initialized before OpenGL ES.
Signed-off-by: Xerxes Rånby <[email protected]>
|
|\ \ \
| |/ /
|/| | |
|