From 1fb49c8190d8de286c0e593b067e598459e55f3c Mon Sep 17 00:00:00 2001 From: Lucas Dupin Date: Thu, 20 Feb 2020 21:39:41 -0800 Subject: [PATCH] Only register long press when required Otherwise Talkback would anoounce an action that's invalid. Test: long press on emergency dialer button Fixes: 149452415 Change-Id: I50f68c7281a9ed97825bbbac00db329a51fd905e --- .../src/com/android/keyguard/EmergencyButton.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/packages/SystemUI/src/com/android/keyguard/EmergencyButton.java b/packages/SystemUI/src/com/android/keyguard/EmergencyButton.java index c2cedad0dc48a..487e0d8ea38e1 100644 --- a/packages/SystemUI/src/com/android/keyguard/EmergencyButton.java +++ b/packages/SystemUI/src/com/android/keyguard/EmergencyButton.java @@ -116,17 +116,16 @@ public class EmergencyButton extends Button { mLockPatternUtils = new LockPatternUtils(mContext); mPowerManager = (PowerManager) mContext.getSystemService(Context.POWER_SERVICE); setOnClickListener(v -> takeEmergencyCallAction()); - setOnLongClickListener(new OnLongClickListener() { - @Override - public boolean onLongClick(View v) { + if (mEmergencyAffordanceManager.needsEmergencyAffordance()) { + setOnLongClickListener(v -> { if (!mLongPressWasDragged && mEmergencyAffordanceManager.needsEmergencyAffordance()) { mEmergencyAffordanceManager.performEmergencyCall(); return true; } return false; - } - }); + }); + } whitelistIpcs(this::updateEmergencyCallButton); }