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

Commit bacad701 authored by Siarhei Vishniakou's avatar Siarhei Vishniakou
Browse files

Explicit delay in View.java

Currently, the checkForLongClick function receives an argument that
later gets subtracted from some default value, but it is confusing to
use such a function. The natural computation is to provide the time
delay directly.
Minor refactor of View.java here to simplify the math.

Bug: none
Test: none
Change-Id: Ic237e8edac5bd2c7608215f20706a4a67a194b4b
parent 6c14b389
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -13994,7 +13994,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
                    if (clickable) {
                        setPressed(true, x, y);
                    }
                    checkForLongClick(0, x, y);
                    checkForLongClick(ViewConfiguration.getLongPressTimeout(), x, y);
                    return true;
                }
            }
@@ -14735,7 +14735,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
                    mHasPerformedLongPress = false;
                    if (!clickable) {
                        checkForLongClick(0, x, y);
                        checkForLongClick(ViewConfiguration.getLongPressTimeout(), x, y);
                        break;
                    }
@@ -14759,7 +14759,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
                    } else {
                        // Not inside a scrolling container, so show the feedback right away
                        setPressed(true, x, y);
                        checkForLongClick(0, x, y);
                        checkForLongClick(ViewConfiguration.getLongPressTimeout(), x, y);
                    }
                    break;
@@ -25434,7 +25434,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
        }
    }
    private void checkForLongClick(int delayOffset, float x, float y) {
    private void checkForLongClick(long delay, float x, float y) {
        if ((mViewFlags & LONG_CLICKABLE) == LONG_CLICKABLE || (mViewFlags & TOOLTIP) == TOOLTIP) {
            mHasPerformedLongPress = false;
@@ -25444,8 +25444,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
            mPendingCheckForLongPress.setAnchor(x, y);
            mPendingCheckForLongPress.rememberWindowAttachCount();
            mPendingCheckForLongPress.rememberPressedState();
            postDelayed(mPendingCheckForLongPress,
                    ViewConfiguration.getLongPressTimeout() - delayOffset);
            postDelayed(mPendingCheckForLongPress, delay);
        }
    }
@@ -27035,7 +27034,9 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
        public void run() {
            mPrivateFlags &= ~PFLAG_PREPRESSED;
            setPressed(true, x, y);
            checkForLongClick(ViewConfiguration.getTapTimeout(), x, y);
            final long delay =
                    ViewConfiguration.getLongPressTimeout() - ViewConfiguration.getTapTimeout();
            checkForLongClick(delay, x, y);
        }
    }