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

Commit a9610c24 authored by Lucas Dupin's avatar Lucas Dupin Committed by Android (Google) Code Review
Browse files

Merge "Calculate pattern bounds correctly" into qt-dev

parents 75fb684e 727890f1
Loading
Loading
Loading
Loading
+13 −4
Original line number Diff line number Diff line
@@ -68,6 +68,9 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
    private final AppearAnimationUtils mAppearAnimationUtils;
    private final DisappearAnimationUtils mDisappearAnimationUtils;
    private final DisappearAnimationUtils mDisappearAnimationUtilsLocked;
    private final int[] mTmpPosition = new int[2];
    private final Rect mTempRect = new Rect();
    private final Rect mLockPatternScreenBounds = new Rect();

    private CountDownTimer mCountdownTimer = null;
    private LockPatternUtils mLockPatternUtils;
@@ -92,7 +95,6 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
            mLockPatternView.clearPattern();
        }
    };
    private Rect mTempRect = new Rect();
    @VisibleForTesting
    KeyguardMessageArea mSecurityMessageDisplay;
    private View mEcaView;
@@ -198,6 +200,15 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit
        return result;
    }

    @Override
    protected void onLayout(boolean changed, int l, int t, int r, int b) {
        super.onLayout(changed, l, t, r, b);
        mLockPatternView.getLocationOnScreen(mTmpPosition);
        mLockPatternScreenBounds.set(mTmpPosition[0], mTmpPosition[1],
                mTmpPosition[0] + mLockPatternView.getWidth(),
                mTmpPosition[1] + mLockPatternView.getHeight());
    }

    @Override
    public void reset() {
        // reset lock pattern
@@ -233,9 +244,7 @@ public class KeyguardPatternView extends LinearLayout implements KeyguardSecurit

    @Override
    public boolean disallowInterceptTouch(MotionEvent event) {
        mTempRect.set(mLockPatternView.getLeft(), mLockPatternView.getTop(),
                mLockPatternView.getRight(), mLockPatternView.getBottom());
        return mTempRect.contains((int) event.getX(), (int) event.getY());
        return mLockPatternScreenBounds.contains((int) event.getRawX(), (int) event.getRawY());
    }

    /** TODO: hook this up */