Loading core/java/android/view/MotionEvent.java +4 −4 Original line number Diff line number Diff line Loading @@ -3372,11 +3372,11 @@ public final class MotionEvent extends InputEvent implements Parcelable { throw new IllegalArgumentException("Axis out of range."); } final long bits = mPackedAxisBits; final long axisBit = 1L << axis; final long axisBit = 0x8000000000000000L >>> axis; if ((bits & axisBit) == 0) { return 0; } final int index = Long.bitCount(bits & (axisBit - 1L)); final int index = Long.bitCount(bits & ~(0xFFFFFFFFFFFFFFFFL >>> axis)); return mPackedAxisValues[index]; } } Loading Loading @@ -3425,8 +3425,8 @@ public final class MotionEvent extends InputEvent implements Parcelable { throw new IllegalArgumentException("Axis out of range."); } final long bits = mPackedAxisBits; final long axisBit = 1L << axis; final int index = Long.bitCount(bits & (axisBit - 1L)); final long axisBit = 0x8000000000000000L >>> axis; final int index = Long.bitCount(bits & ~(0xFFFFFFFFFFFFFFFFL >>> axis)); float[] values = mPackedAxisValues; if ((bits & axisBit) == 0) { if (values == null) { Loading core/java/android/view/ViewRootImpl.java +14 −2 Original line number Diff line number Diff line Loading @@ -4309,6 +4309,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; Loading Loading @@ -4341,10 +4342,21 @@ public final class ViewRootImpl implements ViewParent, } public void process(MotionEvent event) { 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); } Loading Loading
core/java/android/view/MotionEvent.java +4 −4 Original line number Diff line number Diff line Loading @@ -3372,11 +3372,11 @@ public final class MotionEvent extends InputEvent implements Parcelable { throw new IllegalArgumentException("Axis out of range."); } final long bits = mPackedAxisBits; final long axisBit = 1L << axis; final long axisBit = 0x8000000000000000L >>> axis; if ((bits & axisBit) == 0) { return 0; } final int index = Long.bitCount(bits & (axisBit - 1L)); final int index = Long.bitCount(bits & ~(0xFFFFFFFFFFFFFFFFL >>> axis)); return mPackedAxisValues[index]; } } Loading Loading @@ -3425,8 +3425,8 @@ public final class MotionEvent extends InputEvent implements Parcelable { throw new IllegalArgumentException("Axis out of range."); } final long bits = mPackedAxisBits; final long axisBit = 1L << axis; final int index = Long.bitCount(bits & (axisBit - 1L)); final long axisBit = 0x8000000000000000L >>> axis; final int index = Long.bitCount(bits & ~(0xFFFFFFFFFFFFFFFFL >>> axis)); float[] values = mPackedAxisValues; if ((bits & axisBit) == 0) { if (values == null) { Loading
core/java/android/view/ViewRootImpl.java +14 −2 Original line number Diff line number Diff line Loading @@ -4309,6 +4309,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; Loading Loading @@ -4341,10 +4342,21 @@ public final class ViewRootImpl implements ViewParent, } public void process(MotionEvent event) { 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); } Loading