diff options
author | Sven Gothel <[email protected]> | 2013-02-28 13:31:29 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2013-02-28 13:31:29 +0100 |
commit | 3a4892c43be4a9dabba73d42175c2cfa39bd6d8d (patch) | |
tree | 8780bb35234f6d16c89efc34c94409816f54464a /make/lib/swt/gtk-linux-x86/about_files/lgpl-v21.txt | |
parent | 1f9bff1aab54c399438c735581508ac85c6a29b3 (diff) |
Fix Bug 677: NEWT/Android: Add support for Android's KeyEvent.KEYCODE_BACK
Original author: Eric Brayet <[email protected]>
Revised by: Sven Gothel <[email protected]>
I took the freedom to cleanup the three original patches
from https://github.com/Pooouf/jogl.git branch 'bug_677':
- 7449d4726633d524a3bb79efffd04cfd0ca25e58 (removed by followup patch!)
- 68c739a4f03e46deecdbb71c125b4586aec08d63 (removes previous patch!)
- c2813dfc325a1482d18b6fc304e4e483f5633964
Further more I was able to reduce the 'extra' code while utilizing
- Window's isKeyboardVisible() and using keyboardVisibilityChanged(false)
to update the hidden keyboard state.
- Moving the key-handling code to the containing WindowDriver class
avoiding passing a reference to the inner view.
- Using AndroidNewtEventFactory for NEWT KeyEvent creation
+++
- Handle KeyEvent.KEYCODE_BACK w/ jogamp.newt.driver.android.WindowDriver.MSurfaceView.onKeyPreIme(..):
if( soft keyboard is up )
[1] Update keyboard visibility state and return NEWT KeyEvent.VK_KEYBOARD_INVISIBLE;
else
[2] call WindowImpl.windowDestroyNotify(true)
[3] then cont. processing, i.e. return false;
- Turns out respecting WindowClosingMode might be
- too complicated
- interfere w/ Android UI behavior
- AndroidNewtEventFactory
- createKeyEvent
- static
- adding boolean param 'inclSysKeys', if true, KEYCODE_BACK and KEYCODE_HOME are mapped
- Unit tests: GearsES2 + MovieCubeActivity0 shows keyboard if pressure > 0.6f
- pressure on Android shall be between [0..1], however we have to figure out
badly calibrated touchpads/Android device where we could experience
pressure > 2.0f !
- TODO: API documentation of pressure [0..1]
Diffstat (limited to 'make/lib/swt/gtk-linux-x86/about_files/lgpl-v21.txt')
0 files changed, 0 insertions, 0 deletions