diff options
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java index 33df7a8..435787e 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java @@ -19,6 +19,7 @@ import android.content.Context; import android.content.Intent; import android.net.NetworkCapabilities; import android.os.Looper; +import android.os.SystemProperties; import android.telephony.PhoneStateListener; import android.telephony.ServiceState; import android.telephony.SignalStrength; @@ -238,6 +239,7 @@ public class MobileSignalController extends SignalController< int typeIcon = showDataIcon ? icons.mDataType : 0; mCallbackHandler.setMobileDataIndicators(statusIcon, qsIcon, typeIcon, qsTypeIcon, activityIn, activityOut, dataContentDescription, description, icons.mIsWide, + mCurrentState.showSeparateRoaming, mSubscriptionInfo.getSubscriptionId()); } @@ -398,7 +400,12 @@ public class MobileSignalController extends SignalController< if (isCarrierNetworkChangeActive()) { mCurrentState.iconGroup = TelephonyIcons.CARRIER_NETWORK_CHANGE; } else if (isRoaming()) { - mCurrentState.iconGroup = TelephonyIcons.ROAMING; + mCurrentState.showSeparateRoaming = false; + if (SystemProperties.getBoolean("ro.config.always_show_roaming", false)) { + mCurrentState.showSeparateRoaming = true; + } else { + mCurrentState.iconGroup = TelephonyIcons.ROAMING; + } } if (isEmergencyOnly() != mCurrentState.isEmergency) { mCurrentState.isEmergency = isEmergencyOnly(); @@ -530,6 +537,7 @@ public class MobileSignalController extends SignalController< boolean airplaneMode; boolean carrierNetworkChangeMode; boolean isDefault; + boolean showSeparateRoaming; @Override public void copyFrom(State s) { @@ -543,6 +551,7 @@ public class MobileSignalController extends SignalController< isEmergency = state.isEmergency; airplaneMode = state.airplaneMode; carrierNetworkChangeMode = state.carrierNetworkChangeMode; + showSeparateRoaming = state.showSeparateRoaming; } @Override @@ -557,6 +566,7 @@ public class MobileSignalController extends SignalController< builder.append("isEmergency=").append(isEmergency).append(','); builder.append("airplaneMode=").append(airplaneMode).append(','); builder.append("carrierNetworkChangeMode=").append(carrierNetworkChangeMode); + builder.append("showSeparateRoaming=").append(showSeparateRoaming); } @Override @@ -569,7 +579,8 @@ public class MobileSignalController extends SignalController< && ((MobileState) o).isEmergency == isEmergency && ((MobileState) o).airplaneMode == airplaneMode && ((MobileState) o).carrierNetworkChangeMode == carrierNetworkChangeMode - && ((MobileState) o).isDefault == isDefault; + && ((MobileState) o).isDefault == isDefault + && ((MobileState) o).showSeparateRoaming == showSeparateRoaming; } } } |