diff options
author | Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> | 2024-03-27 06:04:27 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2024-03-27 06:04:27 +0000 |
commit | 36be1b1c434cfcbe7a574c473e90ab66513ee8e1 (patch) | |
tree | d09dd26bede3f7b5fa1ed88f129fdfe7d4ede2a4 | |
parent | afd53ce120724ef74bdb5dc4e43e0626ea469800 (diff) | |
parent | e239b4caedb69ca45e370e1b3bfcf6607587d7c5 (diff) |
Merge "SystemUI:check ServiceStatus for all subs to show Emergency button" into u-keystone-qcom-dev
-rw-r--r-- | packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java b/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java index 85502c44ef3c..2927c4e32567 100644 --- a/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java +++ b/packages/SystemUI/src/com/android/keyguard/EmergencyButtonController.java @@ -58,7 +58,7 @@ import com.android.systemui.util.EmergencyDialerConstants; import com.android.systemui.util.ViewController; import java.util.concurrent.Executor; -import java.util.List; +import java.util.HashMap; import javax.inject.Inject; @@ -80,7 +80,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { private Executor mBackgroundExecutor; private EmergencyButtonCallback mEmergencyButtonCallback; - private ServiceState mServiceState; + private HashMap<Integer, ServiceState> mServiceStates = new HashMap<>(); private final KeyguardUpdateMonitorCallback mInfoCallback = new KeyguardUpdateMonitorCallback() { @@ -96,7 +96,7 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { @Override public void onServiceStateChanged(int subId, ServiceState state) { - mServiceState = state; + mServiceStates.put(subId, state); updateEmergencyCallButton(); } }; @@ -220,8 +220,18 @@ public class EmergencyButtonController extends ViewController<EmergencyButton> { } private boolean isEmergencyCapable() { - return (!mKeyguardUpdateMonitor.isOOS() - || (mServiceState !=null && mServiceState.isEmergencyOnly())); + if (!mKeyguardUpdateMonitor.isOOS()){ + return true; + } + for (int subId : mServiceStates.keySet()) { + ServiceState ss = mServiceStates.get(subId); + if (ss != null) { + if (ss.isEmergencyOnly()) { + return true; + } + } + } + return false; } /** */ |