Skip to content
The Jenkins Controller is preparing for shutdown. No new builds can be started.
Unstable

Changes

Summary

  1. Fix for JOGL bug 629, and added new unit tests. (details)
  2. Fix commit 811e3791b98fea0dfa3b7d301cb532c54df8dc82: Make AWT usage (details)
  3. Fix 13168c99ff9e8bf71c83f1be7afee270a3db4074 / (details)
  4. Move pre-existing NEWT event test to new dedicated package package: (details)
  5. AWT-NEWT Modifier mapping and test: part-3 (NEWT BUTTON MASK always, ..) (details)
  6. AWT-NEWT Modifier mapping and test: part-3 (Fix unit tests) (details)
  7. NEWT peserve 'mouseButtonModMask' to be sent for all mouse- and key (details)
Commit 811e3791b98fea0dfa3b7d301cb532c54df8dc82 by rob.hatcherson
Fix for JOGL bug 629, and added new unit tests.

The change to AWTNewtEventFactory appears to fix the original issue
for AWTCanvas instances, and the TestNewtEventModifiersAWTCanvas
appears to work ok too.  However, there are still issues with
NewtCanvasAWT and NewtCanvasSWT instances.  These might be problems
in the test code, but there's also a good chance there are still
issues in the NEWT event delivery infrastructure.  For the time being
I recommend that only TestNewtEventModifiersAWTCanvas be included
in routine unit tests.

The tests are defined in TestNewtEventModifiers, and the remaining
test classes extend it to define how the window and associated
GL drawing surface are created.

File ModifierMappings.txt is simply informational, and shows how
the modifier bits are laid out between AWT and NEWT.  This possibly
should have been a spreadsheet.
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/ModifierMappings.txt (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersAWTCanvas.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasSWT.java (diff)
The file was modified src/newt/classes/jogamp/newt/awt/event/AWTNewtEventFactory.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiers.java (diff)
Commit 13168c99ff9e8bf71c83f1be7afee270a3db4074 by Sven Gothel
Fix commit 811e3791b98fea0dfa3b7d301cb532c54df8dc82: Make AWT usage Java6 clean (was using Java7 stuff); Note: Need to test!
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiers.java (diff)
The file was modified src/newt/classes/jogamp/newt/awt/event/AWTNewtEventFactory.java (diff)
Commit 7ec58d773535e86e413e3c581a5e5bd734cb1269 by Sven Gothel
Fix 13168c99ff9e8bf71c83f1be7afee270a3db4074 / 811e3791b98fea0dfa3b7d301cb532c54df8dc82: AWT-NEWT Modifier mapping - part-2

AWTNewtEventFactory:
  - getAWTButtonMask() -> getAWTButtonDownMask()
    - using proper _DOWN_MASK values (regression of commit 13168c99ff9e8bf71c83f1be7afee270a3db4074)
    - com.jogamp.newt.event.MouseEvent.BUTTON_NUMBER buttons
  - adding 'ModifierMappings.txt' to API doc header
  - remove obsolete 'int awtModifiers2Newt(int awtMods, boolean mouseHint)'
  - 'int awtButton2Newt(int awtButton)' 1:1 button name mapping

Tests:
  - rename TestNewtEventModifiers -> BaseNewtEventModifiers
    to avoid being picked up by our junit testing framework.
    The latter tests all classes starting w/ 'Test*'
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiers.java (diff)
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/event/ModifierMappings.txt (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersAWTCanvas.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/BaseNewtEventModifiers.java (diff)
The file was modified src/newt/classes/jogamp/newt/awt/event/AWTNewtEventFactory.java (diff)
The file was modified src/newt/classes/com/jogamp/newt/event/InputEvent.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasSWT.java (diff)
Commit 58eb9d922c2a16a2724aaa2188c56784d440fb99 by Sven Gothel
Move pre-existing NEWT event test to new dedicated package package: com.jogamp.opengl.test.junit.newt.event
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/TestNewtKeyCodeModifiersAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtKeyPressReleaseUnmaskRepeatAWT.java (diff)
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/TestNewtKeyCodesAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtKeyCodeModifiersAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtKeyEventAutoRepeatAWT.java (diff)
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/TestNewtKeyPressReleaseUnmaskRepeatAWT.java (diff)
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/TestNewtKeyEventAutoRepeatAWT.java (diff)
The file was removedsrc/test/com/jogamp/opengl/test/junit/newt/TestNewtKeyEventOrderAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtKeyEventOrderAWT.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtKeyCodesAWT.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/RedSquareES2.java (diff)
Commit f3e2467decf2a5ee47cfb458f7071772f39ea9c6 by Sven Gothel
AWT-NEWT Modifier mapping and test: part-3 (NEWT BUTTON MASK always, ..)

- AWTNewtEventFactory's awtModifiers2Newt:
  - always include NEWT BUTTON_MASK (press, release, ..)
    where AWT doesn't include them at release (it's only a DOWN_MASK).

- Test BaseNewtEventModifiers, ..
  - No need to call super class Before, BeforeClass, .. manually
  - Use RedSquareES2 as GL demo
  - Adapt to AWTNewtEventFactory's modifier change above (NEWT BUTTON MASK even at release)
  - More descriptive error/log text

- Added _mandatory_ TestNewtEventModifiersNEWTWindowAWT
  to test native NEWT behavior.
  This shall be the golden behavior all translated events shall compare w/.
The file was modified src/newt/classes/jogamp/newt/awt/event/AWTNewtEventFactory.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersAWTCanvas.java (diff)
The file was addedsrc/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNEWTWindowAWT.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasAWT.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasSWT.java (diff)
The file was modified make/scripts/tests.sh (diff)
The file was modified make/scripts/tests-x64.bat (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/BaseNewtEventModifiers.java (diff)
Commit d45f777e7969769eaa9b7d7f3eb5b34c10268368 by Sven Gothel
AWT-NEWT Modifier mapping and test: part-3 (Fix unit tests)

- Finetune delay

- Wait for eventCount

- Fix Listener concurrency

- Manually tested (enabled in our unit tests now)
  - Tool Combinations
    - NEWT GLWindow
    - AWT GLCanvas
    - NewtCanvasAWT
    - NewtCanvasSWT
  - On
    - Linux/X11
    - Windows
    - OSX(+)

(+): Failure NEWT: When multiple buttons are pressed,
     only the last one is visible via modifier MASK.
"expected:[button1, button2], have: [button2]"
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasSWT.java (diff)
The file was modified make/scripts/tests-x64.bat (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersAWTCanvas.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNEWTWindowAWT.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/TestNewtEventModifiersNewtCanvasAWT.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/newt/event/BaseNewtEventModifiers.java (diff)
Commit 17fde6c517b4ccf91b07c7e86974019bcbfee642 by Sven Gothel
NEWT peserve 'mouseButtonModMask' to be sent for all mouse- and key events. TODO: NEWT Event Factories. Misc: Cleaned up spacing.

On some native OS, the accumulation of pressed button modifier-mask is not available, e.g. OS X.

NEWT WindowImpl.doMouseEvent(..), invoked by native NEWT events,
will track the pressed mouse button modifier-mask, similar to mouseButtonPressed to synthesize the DRAGGED event.

Added NEWT WindowImpl.doKeyEvent(..) to honor the pressed mouse button modifier-mask,
i.e. pass it w/ key events as well.

TODO: Unify synthesization of NEWT event artifacts as described by the above,
allowing NEWT event translation to benefit from same code to gain same semantics.
Notable: AWTNewtEventFactory and SWTNewtEventFactory
The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff)