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

Changes

Summary

  1. NEWTEvent: Add isConsumed() and setConsumed(boolean) methods to simply (details)
  2. NEWT/Android: Fix BACK button implementation, use different KeyCode (details)
  3. NEWT/Android: Remove KeyEvent.KEYCODE_HOME handling, since it doesn't (details)
  4. Add GLStateKeeper handling GLEventListenerState preservation and (details)
  5. Animator: Cleanup DEBUG output (details)
  6. NEWT/Android WindowDriver.closeNative0(..): Catch Exception at surface (details)
  7. NEWT/Android (Bug 665): Add Support for GLStateKeeper ; onPause() always (details)
Commit 98f6f99ddc6643cfa540d6c85c64c7f8510cc1ea by Sven Gothel
NEWTEvent: Add isConsumed() and setConsumed(boolean) methods to simply usage, using the existing consumedTag attachment for compatibility and efficiency.
The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff)
The file was modified src/newt/classes/com/jogamp/newt/event/NEWTEvent.java (diff)
The file was modified src/newt/classes/com/jogamp/newt/awt/NewtCanvasAWT.java (diff)
Commit 58ebd43a78491281e2c3b012666220ed47634c7e by Sven Gothel
NEWT/Android: Fix BACK button implementation, use different KeyCode mappings and allowing native action to be suppressed.

- Don't trust soft-kbd visibility state, but perform invisible action. If the latter
  was successful - soft-kbd was visible before.

- Map BACK to VK_KEYBOARD_INVISIBLE and propagate it,
  if soft-kbd was visible before.
  No native default action is performed.

- Map BACK to VK_ESCAPE event and propagate it,
  if soft-kbd was invisible _and_ an activity was registered via registerActivity(Activity),
  i.e. by NewtBaseActivity.
  Otherwise proceed w/ default action (-> activity.finish()).

- If the KeyListener consumed the [EVENT_KEY_RELEASED, VK_ESCAPE] event,
  it will be suppressed and no default action performed.
  This allows applications to have a custom 'ESCAPE' or 'BACK' handling.
  Otherwise (not consumed) the default action is performed.
The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java (diff)
The file was modified src/newt/classes/com/jogamp/newt/event/NEWTEvent.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/android/event/AndroidNewtEventFactory.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/android/WindowDriver.java (diff)
Commit 8b34a0389e07967ce0c2ccc430a7c1d0803c3e51 by Sven Gothel
NEWT/Android: Remove KeyEvent.KEYCODE_HOME handling, since it doesn't work - i.e. cannot be intercepted this way.
The file was modified src/newt/classes/jogamp/newt/driver/android/WindowDriver.java (diff)
Commit 3ad03e41a0cda81119c23f350c00b064a4de70c2 by Sven Gothel
Add GLStateKeeper handling GLEventListenerState preservation and restauration for GLAutoDrawable

- New GLStateKeeper interface, package com.jogamp.opengl

  Implemented by:
    - GLAutoDrawableBase

  Currently supported by:
    - NEWT GLWindow

- GLEventListenerState package move:
   com.jogamp.opengl.util ->  com.jogamp.opengl
The file was removedsrc/jogl/classes/com/jogamp/opengl/util/GLEventListenerState.java (diff)
The file was modified src/newt/classes/jogamp/newt/WindowImpl.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/glels/TestGLContextDrawableSwitch10NEWT.java (diff)
The file was modified src/jogl/classes/jogamp/opengl/GLAutoDrawableBase.java (diff)
The file was addedsrc/jogl/classes/com/jogamp/opengl/GLEventListenerState.java (diff)
The file was addedsrc/jogl/classes/com/jogamp/opengl/GLStateKeeper.java (diff)
The file was modified src/jogl/classes/com/jogamp/opengl/util/GLDrawableUtil.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/glels/GLContextDrawableSwitchBase.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/glels/TestGLContextDrawableSwitch21Newt2AWT.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/glels/TestGLContextDrawableSwitch12AWT.java (diff)
The file was modified src/newt/classes/com/jogamp/newt/opengl/GLWindow.java (diff)
The file was modified src/test/com/jogamp/opengl/test/junit/jogl/acore/glels/TestGLContextDrawableSwitch11NewtAWT.java (diff)
Commit 109def11bebd63f66eb0e751aa7932ce147a2738 by Sven Gothel
Animator: Cleanup DEBUG output
The file was modified src/jogl/classes/com/jogamp/opengl/util/Animator.java (diff)
Commit 3673964caf2c4ac4efddffb8d7e9c28cce49b48c by Sven Gothel
NEWT/Android WindowDriver.closeNative0(..): Catch Exception at surface destroy allowing to continue destruction.
The file was modified src/newt/classes/jogamp/newt/driver/android/WindowDriver.java (diff)
Commit d514ecbf052d013ea8c0982c490757678075a9ea by Sven Gothel
NEWT/Android (Bug 665): Add Support for GLStateKeeper ; onPause() always destroys ; Recognizing all GLAutoDrawable's GLAnimatorControl for pause/resume ; Use GLAnimatorControl instead of Animator

- Add Support for GLStateKeeper
  If !isFinishing() (HOME button), preserve the GLEventListener if an GLStateKeeper instance

- onPause() always destroys
  onDestroy() is too late, i.e. surfaceDestroyed() already called

- Recognizing all GLAutoDrawable's GLAnimatorControl for pause/resume
  pause/resume the GLAnimatorControl of all GLAutoDrawable instances

- Use GLAnimatorControl instead of Animator
  We used an Animator reference .. duh!

Note: The EGL native WindowDriver (Android and BCM.IV) must retain their own copy of EGLGraphicsDevice,
      which preserves the EGLDisplay handle due to EGLDisplayUtil reference counting per nativeHandleID.
The file was modified src/test/com/jogamp/opengl/test/android/MovieCubeActivity0.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTElektronActivity.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/MovieSimpleActivity1.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTGearsES1Activity.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTRedSquareES1Activity.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTGraphUI1pActivity.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTRedSquareES2Activity.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/android/ScreenDriver.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTGearsES2TransActivity.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/MovieSimpleActivity0.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTGearsES2Activity.java (diff)
The file was modified src/test/com/jogamp/opengl/test/android/NEWTGraphUI2pActivity.java (diff)
The file was modified src/jogl/classes/com/jogamp/opengl/GLEventListenerState.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/android/WindowDriver.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/bcm/vc/iv/WindowDriver.java (diff)
The file was modified src/newt/classes/jogamp/newt/driver/android/NewtBaseActivity.java (diff)