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

Commit eb8171bc authored by Conley Owens's avatar Conley Owens Committed by Android Code Review
Browse files

Merge "Adjust mBiggerTouchSlopSquare to the suitable value"

parents 76616b13 40209532
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -192791,6 +192791,17 @@
 visibility="public"
>
</method>
<method name="getScaledLargeTouchSlop"
 return="int"
 abstract="false"
 native="false"
 synchronized="false"
 static="false"
 final="false"
 deprecated="not deprecated"
 visibility="public"
>
</method>
<method name="getScaledMaximumDrawingCacheSize"
 return="int"
 abstract="false"
+6 −5
Original line number Diff line number Diff line
@@ -193,10 +193,8 @@ public class GestureDetector {
        }
    }

    // TODO: ViewConfiguration
    private int mBiggerTouchSlopSquare = 20 * 20;

    private int mTouchSlopSquare;
    private int mLargeTouchSlopSquare;
    private int mDoubleTapSlopSquare;
    private int mMinimumFlingVelocity;
    private int mMaximumFlingVelocity;
@@ -384,10 +382,11 @@ public class GestureDetector {
        mIgnoreMultitouch = ignoreMultitouch;

        // Fallback to support pre-donuts releases
        int touchSlop, doubleTapSlop;
        int touchSlop, largeTouchSlop, doubleTapSlop;
        if (context == null) {
            //noinspection deprecation
            touchSlop = ViewConfiguration.getTouchSlop();
            largeTouchSlop = touchSlop + 2;
            doubleTapSlop = ViewConfiguration.getDoubleTapSlop();
            //noinspection deprecation
            mMinimumFlingVelocity = ViewConfiguration.getMinimumFlingVelocity();
@@ -395,11 +394,13 @@ public class GestureDetector {
        } else {
            final ViewConfiguration configuration = ViewConfiguration.get(context);
            touchSlop = configuration.getScaledTouchSlop();
            largeTouchSlop = configuration.getScaledLargeTouchSlop();
            doubleTapSlop = configuration.getScaledDoubleTapSlop();
            mMinimumFlingVelocity = configuration.getScaledMinimumFlingVelocity();
            mMaximumFlingVelocity = configuration.getScaledMaximumFlingVelocity();
        }
        mTouchSlopSquare = touchSlop * touchSlop;
        mLargeTouchSlopSquare = largeTouchSlop * largeTouchSlop;
        mDoubleTapSlopSquare = doubleTapSlop * doubleTapSlop;
    }

@@ -534,7 +535,7 @@ public class GestureDetector {
                    mHandler.removeMessages(SHOW_PRESS);
                    mHandler.removeMessages(LONG_PRESS);
                }
                if (distance > mBiggerTouchSlopSquare) {
                if (distance > mLargeTouchSlopSquare) {
                    mAlwaysInBiggerTapRegion = false;
                }
            } else if ((Math.abs(scrollX) >= 1) || (Math.abs(scrollY) >= 1)) {
+17 −0
Original line number Diff line number Diff line
@@ -101,6 +101,12 @@ public class ViewConfiguration {
     */
    private static final int TOUCH_SLOP = 16;
    
    /**
     * Distance a touch can wander before we think the user is the first touch
     * in a sequence of double tap
     */
    private static final int LARGE_TOUCH_SLOP = 18;

    /**
     * Distance a touch can wander before we think the user is attempting a paged scroll
     * (in dips)
@@ -156,6 +162,7 @@ public class ViewConfiguration {
    private final int mMaximumFlingVelocity;
    private final int mScrollbarSize;
    private final int mTouchSlop;
    private final int mLargeTouchSlop;
    private final int mPagingTouchSlop;
    private final int mDoubleTapSlop;
    private final int mWindowTouchSlop;
@@ -177,6 +184,7 @@ public class ViewConfiguration {
        mMaximumFlingVelocity = MAXIMUM_FLING_VELOCITY;
        mScrollbarSize = SCROLL_BAR_SIZE;
        mTouchSlop = TOUCH_SLOP;
        mLargeTouchSlop = LARGE_TOUCH_SLOP;
        mPagingTouchSlop = PAGING_TOUCH_SLOP;
        mDoubleTapSlop = DOUBLE_TAP_SLOP;
        mWindowTouchSlop = WINDOW_TOUCH_SLOP;
@@ -206,6 +214,7 @@ public class ViewConfiguration {
        mMaximumFlingVelocity = (int) (density * MAXIMUM_FLING_VELOCITY + 0.5f);
        mScrollbarSize = (int) (density * SCROLL_BAR_SIZE + 0.5f);
        mTouchSlop = (int) (density * TOUCH_SLOP + 0.5f);
        mLargeTouchSlop =  (int) (density * LARGE_TOUCH_SLOP + 0.5f);
        mPagingTouchSlop = (int) (density * PAGING_TOUCH_SLOP + 0.5f);
        mDoubleTapSlop = (int) (density * DOUBLE_TAP_SLOP + 0.5f);
        mWindowTouchSlop = (int) (density * WINDOW_TOUCH_SLOP + 0.5f);
@@ -366,6 +375,14 @@ public class ViewConfiguration {
        return mTouchSlop;
    }
    
    /**
     * @return Distance a touch can wander before we think the user is the first touch
     *         in a sequence of double tap
     */
    public int getScaledLargeTouchSlop() {
        return mLargeTouchSlop;
    }

    /**
     * @return Distance a touch can wander before we think the user is scrolling a full page
     *         in dips