Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f2ad1a44 authored by tingna_sung's avatar tingna_sung
Browse files

Measure absolute value of pointer motion distance



If pointer is moving to the negative axis direction, pointer movement
distance will always less than pre-defined mMotionSlop, thus
TAP_OUTSIDE_STACK will have chance to be sent, will cause unnecessary
focus stack switch.

Change-Id: Ia4c066bebce250257c7361ef976907a0ca2c6461
Signed-off-by: default avatartingna_sung <tingna_sung@htc.com>
parent af5bd75b
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -57,8 +57,8 @@ public class StackTapPointerEventListener implements PointerEventListener {
                if (mPointerId >= 0) {
                    int index = motionEvent.findPointerIndex(mPointerId);
                    if ((motionEvent.getEventTime() - motionEvent.getDownTime()) > TAP_TIMEOUT_MSEC
                            || (motionEvent.getX(index) - mDownX) > mMotionSlop
                            || (motionEvent.getY(index) - mDownY) > mMotionSlop) {
                            || Math.abs(motionEvent.getX(index) - mDownX) > mMotionSlop
                            || Math.abs(motionEvent.getY(index) - mDownY) > mMotionSlop) {
                        mPointerId = -1;
                    }
                }
@@ -73,7 +73,8 @@ public class StackTapPointerEventListener implements PointerEventListener {
                    final int y = (int)motionEvent.getY(index);
                    if ((motionEvent.getEventTime() - motionEvent.getDownTime())
                            < TAP_TIMEOUT_MSEC
                            && (x - mDownX) < mMotionSlop && (y - mDownY) < mMotionSlop
                            && Math.abs(x - mDownX) < mMotionSlop
                            && Math.abs(y - mDownY) < mMotionSlop
                            && !mTouchExcludeRegion.contains(x, y)) {
                        mService.mH.obtainMessage(H.TAP_OUTSIDE_STACK, x, y,
                                mDisplayContent).sendToTarget();