diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java index a4161f9563084..e2464c2ffe915 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/KeyguardAffordanceView.java @@ -497,4 +497,13 @@ public class KeyguardAffordanceView extends ImageView { public void setIsLeft(boolean left) { mIsLeft = left; } + + @Override + public boolean performClick() { + if (isClickable()) { + return super.performClick(); + } else { + return false; + } + } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java index 754fade755566..fceed2f1a3fa6 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBottomAreaView.java @@ -284,10 +284,13 @@ public class KeyguardBottomAreaView extends FrameLayout implements View.OnClickL if (mAccessibilityController == null) { return; } - mLockIcon.setClickable(mUnlockMethodCache.isTrustManaged() - || mAccessibilityController.isTouchExplorationEnabled()); - mLockIcon.setLongClickable(mAccessibilityController.isTouchExplorationEnabled() - && mUnlockMethodCache.isTrustManaged()); + boolean clickToUnlock = mAccessibilityController.isTouchExplorationEnabled(); + boolean clickToForceLock = mUnlockMethodCache.isTrustManaged() + && !mAccessibilityController.isAccessibilityEnabled(); + boolean longClickToForceLock = mUnlockMethodCache.isTrustManaged() + && !clickToForceLock; + mLockIcon.setClickable(clickToForceLock || clickToUnlock); + mLockIcon.setLongClickable(longClickToForceLock); mLockIcon.setFocusable(mAccessibilityController.isAccessibilityEnabled()); }