diff options
| author | Michael Wright <michaelwr@google.com> | 2014-03-29 00:56:00 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2014-03-29 00:56:00 +0000 |
| commit | d020fd33d147c88a9cda4976d2fa559e55b4ab03 (patch) | |
| tree | f1efcf211ac61ea9deab18c423185faa1216ec6c /core/java/android/view/ViewRootImpl.java | |
| parent | 594c73fc57c99a0bceaa84ccd7524e5038a17ad8 (diff) | |
| parent | 1b10869f39978a864cfcc4efc73aefc312d8ed79 (diff) | |
Merge changes Ib18c99b9,I9f42eeb9 into klp-modular-dev
* changes:
Generate and respect ACTION_CANCEL for joystick fallbacks. DO NOT MERGE
Adds API for determining confirm and cancel keys.
Diffstat (limited to 'core/java/android/view/ViewRootImpl.java')
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index d779628571bf..1848a8f976af 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -4319,6 +4319,7 @@ public final class ViewRootImpl implements ViewParent, * Creates dpad events from unhandled joystick movements. */ final class SyntheticJoystickHandler extends Handler { + private final static String TAG = "SyntheticJoystickHandler"; private final static int MSG_ENQUEUE_X_AXIS_KEY_REPEAT = 1; private final static int MSG_ENQUEUE_Y_AXIS_KEY_REPEAT = 2; @@ -4351,10 +4352,21 @@ public final class ViewRootImpl implements ViewParent, } public void process(MotionEvent event) { - update(event, true); + switch(event.getActionMasked()) { + case MotionEvent.ACTION_CANCEL: + cancel(event); + break; + case MotionEvent.ACTION_MOVE: + update(event, true); + break; + default: + Log.w(TAG, "Unexpected action: " + event.getActionMasked()); + } } - public void cancel(MotionEvent event) { + private void cancel(MotionEvent event) { + removeMessages(MSG_ENQUEUE_X_AXIS_KEY_REPEAT); + removeMessages(MSG_ENQUEUE_Y_AXIS_KEY_REPEAT); update(event, false); } |
