Loading services/java/com/android/server/status/StatusBarPolicy.java +3 −2 Original line number Diff line number Diff line Loading @@ -972,7 +972,8 @@ public class StatusBarPolicy { int iconLevel = -1; int[] iconList; if (!hasService()) { // Display signal strength while in "emergency calls only" mode if (!hasService() && !mServiceState.isEmergencyOnly()) { //Slog.d(TAG, "updateSignalStrength: no service"); if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) == 1) { Loading telephony/java/android/telephony/ServiceState.java +30 −3 Original line number Diff line number Diff line Loading @@ -113,6 +113,8 @@ public class ServiceState implements Parcelable { private String mOperatorNumeric; private boolean mIsManualNetworkSelection; private boolean mIsEmergencyOnly; //***** CDMA private int mRadioTechnology; private boolean mCssIndicator; Loading Loading @@ -170,6 +172,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = s.mCdmaDefaultRoamingIndicator; mCdmaEriIconIndex = s.mCdmaEriIconIndex; mCdmaEriIconMode = s.mCdmaEriIconMode; mIsEmergencyOnly = s.mIsEmergencyOnly; } /** Loading @@ -190,6 +193,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = in.readInt(); mCdmaEriIconIndex = in.readInt(); mCdmaEriIconMode = in.readInt(); mIsEmergencyOnly = in.readInt() != 0; } public void writeToParcel(Parcel out, int flags) { Loading @@ -207,6 +211,7 @@ public class ServiceState implements Parcelable { out.writeInt(mCdmaDefaultRoamingIndicator); out.writeInt(mCdmaEriIconIndex); out.writeInt(mCdmaEriIconMode); out.writeInt(mIsEmergencyOnly ? 1 : 0); } public int describeContents() { Loading Loading @@ -247,6 +252,13 @@ public class ServiceState implements Parcelable { return mRoaming; } /** * @hide */ public boolean isEmergencyOnly() { return mIsEmergencyOnly; } /** * @hide */ Loading Loading @@ -330,7 +342,8 @@ public class ServiceState implements Parcelable { + ((null == mOperatorAlphaShort) ? 0 : mOperatorAlphaShort.hashCode()) + ((null == mOperatorNumeric) ? 0 : mOperatorNumeric.hashCode()) + mCdmaRoamingIndicator + mCdmaDefaultRoamingIndicator); + mCdmaDefaultRoamingIndicator + (mIsEmergencyOnly ? 1 : 0)); } @Override Loading Loading @@ -359,7 +372,8 @@ public class ServiceState implements Parcelable { && equalsHandlesNulls(mSystemId, s.mSystemId) && equalsHandlesNulls(mCdmaRoamingIndicator, s.mCdmaRoamingIndicator) && equalsHandlesNulls(mCdmaDefaultRoamingIndicator, s.mCdmaDefaultRoamingIndicator)); s.mCdmaDefaultRoamingIndicator) && mIsEmergencyOnly == s.mIsEmergencyOnly); } @Override Loading Loading @@ -418,7 +432,8 @@ public class ServiceState implements Parcelable { + " " + mNetworkId + " " + mSystemId + "RoamInd: " + mCdmaRoamingIndicator + "DefRoamInd: " + mCdmaDefaultRoamingIndicator); + "DefRoamInd: " + mCdmaDefaultRoamingIndicator + "EmergOnly: " + mIsEmergencyOnly); } public void setStateOutOfService() { Loading @@ -436,6 +451,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = -1; mCdmaEriIconIndex = -1; mCdmaEriIconMode = -1; mIsEmergencyOnly = false; } // TODO - can't this be combined with the above func.. Loading @@ -454,6 +470,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = -1; mCdmaEriIconIndex = -1; mCdmaEriIconMode = -1; mIsEmergencyOnly = false; } public void setState(int state) { Loading @@ -464,6 +481,14 @@ public class ServiceState implements Parcelable { mRoaming = roaming; } /** * @hide */ public void setEmergencyOnly(boolean emergencyOnly) { mIsEmergencyOnly = emergencyOnly; } /** * @hide */ Loading Loading @@ -542,6 +567,7 @@ public class ServiceState implements Parcelable { mSystemId = m.getInt("systemId"); mCdmaRoamingIndicator = m.getInt("cdmaRoamingIndicator"); mCdmaDefaultRoamingIndicator = m.getInt("cdmaDefaultRoamingIndicator"); mIsEmergencyOnly = m.getBoolean("emergencyOnly"); } /** Loading @@ -563,6 +589,7 @@ public class ServiceState implements Parcelable { m.putInt("systemId", mSystemId); m.putInt("cdmaRoamingIndicator", mCdmaRoamingIndicator); m.putInt("cdmaDefaultRoamingIndicator", mCdmaDefaultRoamingIndicator); m.putBoolean("emergencyOnly", Boolean.valueOf(mIsEmergencyOnly)); } //***** CDMA Loading telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java +7 −13 Original line number Diff line number Diff line Loading @@ -102,7 +102,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { * Mark when service state is in emergency call only mode */ private boolean mEmergencyOnly = false; private boolean mNewEmergencyOnly = false; private RegistrantList gprsAttachedRegistrants = new RegistrantList(); private RegistrantList gprsDetachedRegistrants = new RegistrantList(); Loading Loading @@ -591,8 +590,8 @@ final class GsmServiceStateTracker extends ServiceStateTracker { if (rule != curSpnRule || !TextUtils.equals(spn, curSpn) || !TextUtils.equals(plmn, curPlmn)) { boolean showSpn = mEmergencyOnly || (rule & SIMRecords.SPN_RULE_SHOW_SPN) == SIMRecords.SPN_RULE_SHOW_SPN; boolean showSpn = !mEmergencyOnly && (rule & SIMRecords.SPN_RULE_SHOW_SPN) == SIMRecords.SPN_RULE_SHOW_SPN; boolean showPlmn = (rule & SIMRecords.SPN_RULE_SHOW_PLMN) == SIMRecords.SPN_RULE_SHOW_PLMN; Loading Loading @@ -672,9 +671,9 @@ final class GsmServiceStateTracker extends ServiceStateTracker { newSS.setState (regCodeToServiceState(regState)); if (regState == 10 || regState == 12 || regState == 13 || regState == 14) { mNewEmergencyOnly = true; mEmergencyOnly = true; } else { mNewEmergencyOnly = false; mEmergencyOnly = false; } // LAC and CID are -1 if not avail Loading Loading @@ -741,6 +740,7 @@ final class GsmServiceStateTracker extends ServiceStateTracker { roaming = false; } newSS.setRoaming(roaming); newSS.setEmergencyOnly(mEmergencyOnly); pollStateDone(); } } Loading Loading @@ -886,8 +886,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { boolean hasLocationChanged = !newCellLoc.equals(cellLoc); boolean hasEmergencyOnlyChanged = mNewEmergencyOnly != mEmergencyOnly; // Add an event log when connection state changes if (ss.getState() != newSS.getState() || gprsState != newGPRSState) { EventLog.writeEvent(EventLogTags.GSM_SERVICE_STATE_CHANGE, Loading @@ -905,8 +903,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { cellLoc = newCellLoc; newCellLoc = tcl; mEmergencyOnly = mNewEmergencyOnly; // Add an event log when network type switched // TODO: we may add filtering to reduce the event logged, // i.e. check preferred network setting, only switch to 2G, etc Loading Loading @@ -937,6 +933,8 @@ final class GsmServiceStateTracker extends ServiceStateTracker { if (hasChanged) { String operatorNumeric; updateSpnDisplay(); phone.setSystemProperty(TelephonyProperties.PROPERTY_OPERATOR_ALPHA, ss.getOperatorAlphaLong()); Loading Loading @@ -1005,10 +1003,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { phone.notifyServiceStateChanged(ss); } if (hasChanged || hasEmergencyOnlyChanged) { updateSpnDisplay(); } if (hasGprsAttached) { gprsAttachedRegistrants.notifyRegistrants(); } Loading Loading
services/java/com/android/server/status/StatusBarPolicy.java +3 −2 Original line number Diff line number Diff line Loading @@ -972,7 +972,8 @@ public class StatusBarPolicy { int iconLevel = -1; int[] iconList; if (!hasService()) { // Display signal strength while in "emergency calls only" mode if (!hasService() && !mServiceState.isEmergencyOnly()) { //Slog.d(TAG, "updateSignalStrength: no service"); if (Settings.System.getInt(mContext.getContentResolver(), Settings.System.AIRPLANE_MODE_ON, 0) == 1) { Loading
telephony/java/android/telephony/ServiceState.java +30 −3 Original line number Diff line number Diff line Loading @@ -113,6 +113,8 @@ public class ServiceState implements Parcelable { private String mOperatorNumeric; private boolean mIsManualNetworkSelection; private boolean mIsEmergencyOnly; //***** CDMA private int mRadioTechnology; private boolean mCssIndicator; Loading Loading @@ -170,6 +172,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = s.mCdmaDefaultRoamingIndicator; mCdmaEriIconIndex = s.mCdmaEriIconIndex; mCdmaEriIconMode = s.mCdmaEriIconMode; mIsEmergencyOnly = s.mIsEmergencyOnly; } /** Loading @@ -190,6 +193,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = in.readInt(); mCdmaEriIconIndex = in.readInt(); mCdmaEriIconMode = in.readInt(); mIsEmergencyOnly = in.readInt() != 0; } public void writeToParcel(Parcel out, int flags) { Loading @@ -207,6 +211,7 @@ public class ServiceState implements Parcelable { out.writeInt(mCdmaDefaultRoamingIndicator); out.writeInt(mCdmaEriIconIndex); out.writeInt(mCdmaEriIconMode); out.writeInt(mIsEmergencyOnly ? 1 : 0); } public int describeContents() { Loading Loading @@ -247,6 +252,13 @@ public class ServiceState implements Parcelable { return mRoaming; } /** * @hide */ public boolean isEmergencyOnly() { return mIsEmergencyOnly; } /** * @hide */ Loading Loading @@ -330,7 +342,8 @@ public class ServiceState implements Parcelable { + ((null == mOperatorAlphaShort) ? 0 : mOperatorAlphaShort.hashCode()) + ((null == mOperatorNumeric) ? 0 : mOperatorNumeric.hashCode()) + mCdmaRoamingIndicator + mCdmaDefaultRoamingIndicator); + mCdmaDefaultRoamingIndicator + (mIsEmergencyOnly ? 1 : 0)); } @Override Loading Loading @@ -359,7 +372,8 @@ public class ServiceState implements Parcelable { && equalsHandlesNulls(mSystemId, s.mSystemId) && equalsHandlesNulls(mCdmaRoamingIndicator, s.mCdmaRoamingIndicator) && equalsHandlesNulls(mCdmaDefaultRoamingIndicator, s.mCdmaDefaultRoamingIndicator)); s.mCdmaDefaultRoamingIndicator) && mIsEmergencyOnly == s.mIsEmergencyOnly); } @Override Loading Loading @@ -418,7 +432,8 @@ public class ServiceState implements Parcelable { + " " + mNetworkId + " " + mSystemId + "RoamInd: " + mCdmaRoamingIndicator + "DefRoamInd: " + mCdmaDefaultRoamingIndicator); + "DefRoamInd: " + mCdmaDefaultRoamingIndicator + "EmergOnly: " + mIsEmergencyOnly); } public void setStateOutOfService() { Loading @@ -436,6 +451,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = -1; mCdmaEriIconIndex = -1; mCdmaEriIconMode = -1; mIsEmergencyOnly = false; } // TODO - can't this be combined with the above func.. Loading @@ -454,6 +470,7 @@ public class ServiceState implements Parcelable { mCdmaDefaultRoamingIndicator = -1; mCdmaEriIconIndex = -1; mCdmaEriIconMode = -1; mIsEmergencyOnly = false; } public void setState(int state) { Loading @@ -464,6 +481,14 @@ public class ServiceState implements Parcelable { mRoaming = roaming; } /** * @hide */ public void setEmergencyOnly(boolean emergencyOnly) { mIsEmergencyOnly = emergencyOnly; } /** * @hide */ Loading Loading @@ -542,6 +567,7 @@ public class ServiceState implements Parcelable { mSystemId = m.getInt("systemId"); mCdmaRoamingIndicator = m.getInt("cdmaRoamingIndicator"); mCdmaDefaultRoamingIndicator = m.getInt("cdmaDefaultRoamingIndicator"); mIsEmergencyOnly = m.getBoolean("emergencyOnly"); } /** Loading @@ -563,6 +589,7 @@ public class ServiceState implements Parcelable { m.putInt("systemId", mSystemId); m.putInt("cdmaRoamingIndicator", mCdmaRoamingIndicator); m.putInt("cdmaDefaultRoamingIndicator", mCdmaDefaultRoamingIndicator); m.putBoolean("emergencyOnly", Boolean.valueOf(mIsEmergencyOnly)); } //***** CDMA Loading
telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java +7 −13 Original line number Diff line number Diff line Loading @@ -102,7 +102,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { * Mark when service state is in emergency call only mode */ private boolean mEmergencyOnly = false; private boolean mNewEmergencyOnly = false; private RegistrantList gprsAttachedRegistrants = new RegistrantList(); private RegistrantList gprsDetachedRegistrants = new RegistrantList(); Loading Loading @@ -591,8 +590,8 @@ final class GsmServiceStateTracker extends ServiceStateTracker { if (rule != curSpnRule || !TextUtils.equals(spn, curSpn) || !TextUtils.equals(plmn, curPlmn)) { boolean showSpn = mEmergencyOnly || (rule & SIMRecords.SPN_RULE_SHOW_SPN) == SIMRecords.SPN_RULE_SHOW_SPN; boolean showSpn = !mEmergencyOnly && (rule & SIMRecords.SPN_RULE_SHOW_SPN) == SIMRecords.SPN_RULE_SHOW_SPN; boolean showPlmn = (rule & SIMRecords.SPN_RULE_SHOW_PLMN) == SIMRecords.SPN_RULE_SHOW_PLMN; Loading Loading @@ -672,9 +671,9 @@ final class GsmServiceStateTracker extends ServiceStateTracker { newSS.setState (regCodeToServiceState(regState)); if (regState == 10 || regState == 12 || regState == 13 || regState == 14) { mNewEmergencyOnly = true; mEmergencyOnly = true; } else { mNewEmergencyOnly = false; mEmergencyOnly = false; } // LAC and CID are -1 if not avail Loading Loading @@ -741,6 +740,7 @@ final class GsmServiceStateTracker extends ServiceStateTracker { roaming = false; } newSS.setRoaming(roaming); newSS.setEmergencyOnly(mEmergencyOnly); pollStateDone(); } } Loading Loading @@ -886,8 +886,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { boolean hasLocationChanged = !newCellLoc.equals(cellLoc); boolean hasEmergencyOnlyChanged = mNewEmergencyOnly != mEmergencyOnly; // Add an event log when connection state changes if (ss.getState() != newSS.getState() || gprsState != newGPRSState) { EventLog.writeEvent(EventLogTags.GSM_SERVICE_STATE_CHANGE, Loading @@ -905,8 +903,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { cellLoc = newCellLoc; newCellLoc = tcl; mEmergencyOnly = mNewEmergencyOnly; // Add an event log when network type switched // TODO: we may add filtering to reduce the event logged, // i.e. check preferred network setting, only switch to 2G, etc Loading Loading @@ -937,6 +933,8 @@ final class GsmServiceStateTracker extends ServiceStateTracker { if (hasChanged) { String operatorNumeric; updateSpnDisplay(); phone.setSystemProperty(TelephonyProperties.PROPERTY_OPERATOR_ALPHA, ss.getOperatorAlphaLong()); Loading Loading @@ -1005,10 +1003,6 @@ final class GsmServiceStateTracker extends ServiceStateTracker { phone.notifyServiceStateChanged(ss); } if (hasChanged || hasEmergencyOnlyChanged) { updateSpnDisplay(); } if (hasGprsAttached) { gprsAttachedRegistrants.notifyRegistrants(); } Loading