summaryrefslogtreecommitdiffstats
path: root/telephony
diff options
context:
space:
mode:
authorKazuhiro Ondo <kazuhiro.ondo@motorola.com>2011-07-09 13:20:37 -0500
committerWink Saville <wink@google.com>2011-07-10 16:26:42 -0700
commit89799e72eee54935ec5830f89dfd0a7d32983917 (patch)
treed5a5e42b59735b2a87e57fd957e74eaaea0604c1 /telephony
parent64ba5eaa40614877c679b3fbaaa3c2efd17d50d2 (diff)
downloadframeworks_base-89799e72eee54935ec5830f89dfd0a7d32983917.zip
frameworks_base-89799e72eee54935ec5830f89dfd0a7d32983917.tar.gz
frameworks_base-89799e72eee54935ec5830f89dfd0a7d32983917.tar.bz2
Fix incorrect ERI banner format
Fix conflicting display issue with ERI and CSIM SPN test. Do not display them together but only override ERI text with CSIM SPN in home area. Bug: 5008969 Change-Id: I88383acd1c7f4c5bfb1f66349ff2f37b2edbbc9c
Diffstat (limited to 'telephony')
-rw-r--r--telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java50
1 files changed, 12 insertions, 38 deletions
diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java b/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java
index 459cf87..0d551aa 100644
--- a/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java
+++ b/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java
@@ -39,7 +39,6 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {
CDMALTEPhone mCdmaLtePhone;
private ServiceState mLteSS; // The last LTE state from Voice Registration
- private String mCurrentSpn = null;
public CdmaLteServiceStateTracker(CDMALTEPhone phone) {
super(phone);
@@ -345,6 +344,18 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {
ss.setOperatorAlphaLong(eriText);
}
+ if (cm.getSimState().isSIMReady()) {
+ // SIM is found on the device. If ERI roaming is OFF, use operator name
+ // from CSIM record.
+ boolean showSpn =
+ ((CdmaLteUiccRecords)phone.mIccRecords).getCsimSpnDisplayCondition();
+ int iconIndex = ss.getCdmaEriIconIndex();
+
+ if (showSpn && (iconIndex == EriInfo.ROAMING_INDICATOR_OFF)) {
+ ss.setOperatorAlphaLong(phone.mIccRecords.getServiceProviderName());
+ }
+ }
+
String operatorNumeric;
phone.setSystemProperty(TelephonyProperties.PROPERTY_OPERATOR_ALPHA,
@@ -468,43 +479,6 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker {
}
@Override
- protected void updateSpnDisplay() {
- // mOperatorAlphaLong contains the ERI text
- String plmn = ss.getOperatorAlphaLong();
-
- boolean showSpn = false;
- String spn = null;
- if (cm.getSimState().isSIMReady()) {
- // SIM is found on the device. Read the operator name from the card.
- showSpn = ((CdmaLteUiccRecords)phone.mIccRecords).getCsimSpnDisplayCondition();
- spn = phone.mIccRecords.getServiceProviderName();
-
- // double check we are not printing identicall test
- if (TextUtils.equals(plmn, spn)) showSpn = false;
- }
-
- if (!TextUtils.equals(plmn, mCurPlmn) ||
- !TextUtils.equals(spn, mCurrentSpn)) {
- boolean showPlmn = plmn != null;
- if (DBG) {
- log(String.format("updateSpnDisplay: changed sending intent" +
- " showPlmn='%b' plmn='%s' showSpn='%b' spn='%s'",
- showPlmn, plmn, showSpn, spn));
- }
- Intent intent = new Intent(Intents.SPN_STRINGS_UPDATED_ACTION);
- intent.addFlags(Intent.FLAG_RECEIVER_REPLACE_PENDING);
- intent.putExtra(Intents.EXTRA_SHOW_SPN, showSpn);
- intent.putExtra(Intents.EXTRA_SPN, spn);
- intent.putExtra(Intents.EXTRA_SHOW_PLMN, showPlmn);
- intent.putExtra(Intents.EXTRA_PLMN, plmn);
- phone.getContext().sendStickyBroadcast(intent);
- }
-
- mCurPlmn = plmn;
- mCurrentSpn = spn;
- }
-
- @Override
protected void log(String s) {
Log.d(LOG_TAG, "[CdmaLteSST] " + s);
}