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

Commit c5286026 authored by Sebastián Franco's avatar Sebastián Franco Committed by Android (Google) Code Review
Browse files

Merge "Send pointer up input even if there is an exception" into main

parents 64614a1e c6cb35d9
Loading
Loading
Loading
Loading
+23 −17
Original line number Diff line number Diff line
@@ -1749,9 +1749,13 @@ public final class LauncherInstrumentation {
        final long downTime = SystemClock.uptimeMillis();
        final Point start = new Point(startX, startY);
        final Point end = new Point(endX, endY);
        long endTime = downTime;
        sendPointer(downTime, downTime, MotionEvent.ACTION_DOWN, start, gestureScope);
        try {

            if (mTrackpadGestureType != TrackpadGestureType.NONE) {
            sendPointer(downTime, downTime, getPointerAction(MotionEvent.ACTION_POINTER_DOWN, 1),
                sendPointer(downTime, downTime,
                        getPointerAction(MotionEvent.ACTION_POINTER_DOWN, 1),
                        start, gestureScope);
                if (mTrackpadGestureType == TrackpadGestureType.THREE_FINGER
                        || mTrackpadGestureType == TrackpadGestureType.FOUR_FINGER) {
@@ -1765,7 +1769,7 @@ public final class LauncherInstrumentation {
                    }
                }
            }
        final long endTime = movePointer(
            endTime = movePointer(
                    start, end, steps, false, downTime, downTime, slowDown, gestureScope);
            if (mTrackpadGestureType != TrackpadGestureType.NONE) {
                for (int i = mPointerCount; i >= 2; i--) {
@@ -1774,8 +1778,10 @@ public final class LauncherInstrumentation {
                            start, gestureScope);
                }
            }
        } finally {
            sendPointer(downTime, endTime, MotionEvent.ACTION_UP, end, gestureScope);
        }
    }

    private static int getPointerAction(int action, int index) {
        return action + (index << MotionEvent.ACTION_POINTER_INDEX_SHIFT);