From 5564752406ac35353c406f79a1be386f9ec5e8d6 Mon Sep 17 00:00:00 2001 From: Yifei Zhang Date: Tue, 18 Jul 2023 18:31:22 -0700 Subject: [PATCH] LockPatternView: set gesture exclusion on layout - Otherwise, system gesture might be able to override the LockPatternView, causing MotionEvent to be pilfer-ed. Test: http://shortn/_DlKHNocpVF Bug: 290878374 Change-Id: I29901066c149fde434c8f91456e9d2e62d0a05e0 --- core/java/com/android/internal/widget/LockPatternView.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/core/java/com/android/internal/widget/LockPatternView.java b/core/java/com/android/internal/widget/LockPatternView.java index c2cfcd64c835f..66b0158fbd673 100644 --- a/core/java/com/android/internal/widget/LockPatternView.java +++ b/core/java/com/android/internal/widget/LockPatternView.java @@ -1565,6 +1565,13 @@ public class LockPatternView extends View { mInStealthMode = ss.isInStealthMode(); } + @Override + protected void onLayout(boolean changed, int left, int top, int right, int bottom) { + super.onLayout(changed, left, top, right, bottom); + + setSystemGestureExclusionRects(List.of(new Rect(left, top, right, bottom))); + } + /** * The parecelable for saving and restoring a lock pattern view. */