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

Changes

Summary

  1. NEWT-MouseEvent getWheelRotation() API Update - Fixes Bug 659: NEWT (details)
Commit da14d647581751f3d2f6d651741eaec485e255b5 by Sven Gothel
NEWT-MouseEvent getWheelRotation() API Update - Fixes Bug 659: NEWT Horizontal Scrolling Behavior (OSX, X11, Win32); Bug 639: High-Res Mouse-Wheel

- API update 'float getWheelRotation()':
  Usually a wheel rotation of > 0.0f is up, and < 0.0f is down.

  Usually a wheel rotations is considered a vertical scroll.
  If isShiftDown(), a wheel rotations is considered a horizontal scroll,
  where shift-up = left = > 0.0f, and shift-down = right = < 0.0f.

  However, on some OS this might be flipped due to the OS default behavior.
  The latter is true for OS X 10.7 (Lion) for example.

  The events will be send usually in steps of one, ie. -1.0f and 1.0f.
  Higher values may result due to fast scrolling.
  Fractional values may result due to slow scrolling with high resolution devices.

  The button number refers to the wheel number.

- Fix Bug 659: NEWT Horizontal Scrolling Behavior (OSX, X11, Win32)

  - See new API doc above

  - X11/Horiz: Keep using button1 and set SHIFT modifier

  - OSX/Horiz:
    - PAD: Use highes absolute scrolling value (Axis1/Axis2)
           and set SHIFT modifier for horizontal scrolling (Axis2)
    - XXX: Use deltaX for horizontal scrolling, detected by SHIFT modifier. (traditional)

  - Windows/Horiz:
    - Add WM_MOUSEHWHEEL support (-> set SHIFT modifier), but it's rarely impl. for trackpads!
    - Add exp. WM_HSCROLL, but it will only be delivered if windows has WS_HSCROLL, hence dead code!

  - Android:
    - Add ACTION_SCROLL (API Level 12), only used if layout is a scroll layout

    - Using GestureDetector to detect scroll even w/ pointerCount > 2, while:
         - skipping 1st scroll event (value too high)
         - skipping other events while in-scroll mode
         - waiting until all pointers were released before cont. normally
         - using View config's 1/touchSlope as scale factor

- Fix Bug 639: High-Res Mouse-Wheel
  - getWheelRotation() return value changed: int -> float
    allowing fractions, see API doc changes above.

  - Fractions are currently supported natively (API) on
    - Windows
    - OSX
    - Android

- AndroidNewtEventFactory ir refactored (requires an instance now) and
  AndroidNewtEventTranslator (event listener) is pulled our of Android WindowDriver.
The file was modifiedsrc/newt/classes/jogamp/newt/awt/event/AWTNewtEventFactory.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/android/event/AndroidNewtEventFactory.java (diff)
The file was addedsrc/newt/classes/jogamp/newt/driver/android/event/AndroidNewtEventTranslator.java (diff)
The file was modifiedmake/resources/android/AndroidManifest-test.xml (diff)
The file was modifiedsrc/newt/native/X11Event.c (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/swt/event/SWTNewtEventFactory.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/windows/WindowDriver.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/windows/RegisteredClass.java (diff)
The file was modifiedmake/scripts/java-win64-dbg.bat (diff)
The file was modifiedmake/scripts/tests-x64.bat (diff)
The file was modifiedsrc/newt/native/KDWindow.c (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/x11/WindowDriver.java (diff)
The file was modifiedmake/scripts/tests.sh (diff)
The file was modifiedsrc/newt/native/NewtMacWindow.m (diff)
The file was modifiedsrc/newt/native/bcm_vc_iv.c (diff)
The file was modifiedmake/scripts/java-win32-dbg.bat (diff)
The file was modifiedmake/scripts/tests-x32.bat (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/windows/GDIUtil.java (diff)
The file was modifiedsrc/newt/native/XCBEvent.c (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/NewtFactory.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/windows/DisplayDriver.java (diff)
The file was modifiedsrc/nativewindow/classes/jogamp/nativewindow/windows/RegisteredClassFactory.java (diff)
The file was modifiedsrc/newt/classes/com/jogamp/newt/event/MouseEvent.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/WindowImpl.java (diff)
The file was modifiedsrc/newt/native/WindowsWindow.c (diff)
The file was modifiedsrc/test/com/jogamp/opengl/test/junit/jogl/demos/es2/GearsES2.java (diff)
The file was modifiedsrc/newt/classes/jogamp/newt/driver/android/WindowDriver.java (diff)
The file was modifiedsrc/newt/native/X11Display.c (diff)