summaryrefslogtreecommitdiffstats
path: root/packages/Keyguard/src/com/android/keyguard/EmergencyButton.java
diff options
context:
space:
mode:
authorJim Miller <jaggies@google.com>2014-11-12 19:29:51 -0800
committerJorim Jaggi <jjaggi@google.com>2014-11-20 21:36:52 +0100
commit52a6133f4ba8b1d08f5158d802790d6a1b16568d (patch)
tree80e4cf7088f82703f021a3b8b1ecc9861189b568 /packages/Keyguard/src/com/android/keyguard/EmergencyButton.java
parent419754545ea0768a7fa715daddedef75b7b31bfa (diff)
downloadframeworks_base-52a6133f4ba8b1d08f5158d802790d6a1b16568d.zip
frameworks_base-52a6133f4ba8b1d08f5158d802790d6a1b16568d.tar.gz
frameworks_base-52a6133f4ba8b1d08f5158d802790d6a1b16568d.tar.bz2
Add multi-sim support to keyguard
Use new telephony APIs. Clean up SIM state machine code. Use cached copy of SubscriptionInfo. Make SIM PIN and SIM PUK work. Tested on single and multi-SIM devices. Fixes bug 18147652 Change-Id: Ic69a4d2898999a5438e6a70b5851705bc05443f1
Diffstat (limited to 'packages/Keyguard/src/com/android/keyguard/EmergencyButton.java')
-rw-r--r--packages/Keyguard/src/com/android/keyguard/EmergencyButton.java18
1 files changed, 6 insertions, 12 deletions
diff --git a/packages/Keyguard/src/com/android/keyguard/EmergencyButton.java b/packages/Keyguard/src/com/android/keyguard/EmergencyButton.java
index e0507a8..50ac261 100644
--- a/packages/Keyguard/src/com/android/keyguard/EmergencyButton.java
+++ b/packages/Keyguard/src/com/android/keyguard/EmergencyButton.java
@@ -36,22 +36,18 @@ import com.android.internal.widget.LockPatternUtils;
* allows the user to return to the call.
*/
public class EmergencyButton extends Button {
-
- private static final int EMERGENCY_CALL_TIMEOUT = 10000; // screen timeout after starting e.d.
private static final String ACTION_EMERGENCY_DIAL = "com.android.phone.EmergencyDialer.DIAL";
KeyguardUpdateMonitorCallback mInfoCallback = new KeyguardUpdateMonitorCallback() {
@Override
- public void onSimStateChanged(State simState) {
- int phoneState = KeyguardUpdateMonitor.getInstance(mContext).getPhoneState();
- updateEmergencyCallButton(simState, phoneState);
+ public void onSimStateChanged(int subId, int slotId, State simState) {
+ updateEmergencyCallButton();
}
@Override
public void onPhoneStateChanged(int phoneState) {
- State simState = KeyguardUpdateMonitor.getInstance(mContext).getSimState();
- updateEmergencyCallButton(simState, phoneState);
+ updateEmergencyCallButton();
}
};
private LockPatternUtils mLockPatternUtils;
@@ -87,9 +83,7 @@ public class EmergencyButton extends Button {
takeEmergencyCallAction();
}
});
- int phoneState = KeyguardUpdateMonitor.getInstance(mContext).getPhoneState();
- State simState = KeyguardUpdateMonitor.getInstance(mContext).getSimState();
- updateEmergencyCallButton(simState, phoneState);
+ updateEmergencyCallButton();
}
/**
@@ -112,12 +106,12 @@ public class EmergencyButton extends Button {
}
}
- private void updateEmergencyCallButton(State simState, int phoneState) {
+ private void updateEmergencyCallButton() {
boolean enabled = false;
if (mLockPatternUtils.isInCall()) {
enabled = true; // always show "return to call" if phone is off-hook
} else if (mLockPatternUtils.isEmergencyCallCapable()) {
- boolean simLocked = KeyguardUpdateMonitor.getInstance(mContext).isSimLocked();
+ final boolean simLocked = KeyguardUpdateMonitor.getInstance(mContext).isSimPinVoiceSecure();
if (simLocked) {
// Some countries can't handle emergency calls while SIM is locked.
enabled = mLockPatternUtils.isEmergencyCallEnabledWhileSimLocked();