Loading packages/SystemUI/src/com/android/systemui/statusbar/MSimSignalClusterView.java +78 −18 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.statusbar; import android.content.Context; import android.telephony.SignalStrength; import android.telephony.MSimTelephonyManager; import android.telephony.TelephonyManager; import android.util.AttributeSet; Loading Loading @@ -288,13 +289,14 @@ public class MSimSignalClusterView } } else if (mStyle == STATUS_BAR_STYLE_DATA_VOICE) { if (showBothDataAndVoice(subscription) || getMobileVoiceId(strengthIcon) != 0) { && getMobileVoiceId(subscription) != 0) { mMobileStrengthId[subscription] = 0; mMobileDataVoiceVisible[subscription] = true; mMobileSignalDataId[subscription] = strengthIcon; mMobileSignalVoiceId[subscription] = getMobileVoiceId(mMobileSignalDataId[subscription]); = getMobileVoiceId(subscription); } else { mMobileStrengthId[subscription] = convertMobileStrengthIcon(mMobileStrengthId[subscription]); mMobileDataVoiceVisible[subscription] = false; } } else { Loading Loading @@ -454,10 +456,19 @@ public class MSimSignalClusterView return false; } return (mMobileTypeId[sub] == R.drawable.stat_sys_data_connected_3g) || (mMobileTypeId[sub] == R.drawable.stat_sys_data_connected_4g) || (mMobileTypeId[sub] == R.drawable.stat_sys_data_fully_connected_3g) || (mMobileTypeId[sub] == R.drawable.stat_sys_data_fully_connected_4g); if (mMSimNC == null) { return false; } boolean ret = false; int dataType = mMSimNC.getDataNetworkType(sub); int voiceType = mMSimNC.getVoiceNetworkType(sub); if ((dataType == TelephonyManager.NETWORK_TYPE_TD_SCDMA || dataType == TelephonyManager.NETWORK_TYPE_LTE) && voiceType == TelephonyManager.NETWORK_TYPE_GSM) { ret = true; } return ret; } private boolean showBoth3gAnd1x() { Loading @@ -481,48 +492,97 @@ public class MSimSignalClusterView return mMobileTypeId[0] == R.drawable.stat_sys_data_fully_connected_roam; } private int getMobileVoiceId(int icon) { int returnVal = 0; private int getMobileVoiceId(int sub) { if (mMSimNC == null) { return 0; } int retValue = 0; int level = mMSimNC.getGsmSignalLevel(sub); switch(level){ case SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN: retValue = R.drawable.stat_sys_signal_0_gsm; break; case SignalStrength.SIGNAL_STRENGTH_POOR: retValue = R.drawable.stat_sys_signal_1_gsm; break; case SignalStrength.SIGNAL_STRENGTH_MODERATE: retValue = R.drawable.stat_sys_signal_2_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GOOD: retValue = R.drawable.stat_sys_signal_3_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GREAT: retValue = R.drawable.stat_sys_signal_4_gsm; break; default: break; } return retValue; } private int convertMobileStrengthIcon(int icon) { int returnVal = icon; switch(icon){ case R.drawable.stat_sys_signal_0_3g: returnVal = R.drawable.stat_sys_signal_0_3g_default; break; case R.drawable.stat_sys_signal_0_4g: returnVal = R.drawable.stat_sys_signal_0_gsm; returnVal = R.drawable.stat_sys_signal_0_4g_default; break; case R.drawable.stat_sys_signal_1_3g: returnVal = R.drawable.stat_sys_signal_1_3g_default; break; case R.drawable.stat_sys_signal_1_4g: returnVal = R.drawable.stat_sys_signal_1_gsm; returnVal = R.drawable.stat_sys_signal_1_4g_default; break; case R.drawable.stat_sys_signal_2_3g: returnVal = R.drawable.stat_sys_signal_2_3g_default; break; case R.drawable.stat_sys_signal_2_4g: returnVal = R.drawable.stat_sys_signal_2_gsm; returnVal = R.drawable.stat_sys_signal_2_4g_default; break; case R.drawable.stat_sys_signal_3_3g: returnVal = R.drawable.stat_sys_signal_3_3g_default; break; case R.drawable.stat_sys_signal_3_4g: returnVal = R.drawable.stat_sys_signal_3_gsm; returnVal = R.drawable.stat_sys_signal_3_4g_default; break; case R.drawable.stat_sys_signal_4_3g: returnVal = R.drawable.stat_sys_signal_4_3g_default; break; case R.drawable.stat_sys_signal_4_4g: returnVal = R.drawable.stat_sys_signal_4_gsm; returnVal = R.drawable.stat_sys_signal_4_4g_default; break; case R.drawable.stat_sys_signal_0_3g_fully: returnVal = R.drawable.stat_sys_signal_0_3g_default_fully; break; case R.drawable.stat_sys_signal_0_4g_fully: returnVal = R.drawable.stat_sys_signal_0_gsm_fully; returnVal = R.drawable.stat_sys_signal_0_4g_default_fully; break; case R.drawable.stat_sys_signal_1_3g_fully: returnVal = R.drawable.stat_sys_signal_1_3g_default_fully; break; case R.drawable.stat_sys_signal_1_4g_fully: returnVal = R.drawable.stat_sys_signal_1_gsm_fully; returnVal = R.drawable.stat_sys_signal_1_4g_default_fully; break; case R.drawable.stat_sys_signal_2_3g_fully: returnVal = R.drawable.stat_sys_signal_2_3g_default_fully; break; case R.drawable.stat_sys_signal_2_4g_fully: returnVal = R.drawable.stat_sys_signal_2_gsm_fully; returnVal = R.drawable.stat_sys_signal_2_4g_default_fully; break; case R.drawable.stat_sys_signal_3_3g_fully: returnVal = R.drawable.stat_sys_signal_3_3g_default_fully; break; case R.drawable.stat_sys_signal_3_4g_fully: returnVal = R.drawable.stat_sys_signal_3_gsm_fully; returnVal = R.drawable.stat_sys_signal_3_4g_default_fully; break; case R.drawable.stat_sys_signal_4_3g_fully: returnVal = R.drawable.stat_sys_signal_4_3g_default_fully; break; case R.drawable.stat_sys_signal_4_4g_fully: returnVal = R.drawable.stat_sys_signal_4_gsm_fully; returnVal = R.drawable.stat_sys_signal_4_4g_default_fully; break; default: break; Loading packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java +79 −18 Original line number Diff line number Diff line Loading @@ -30,6 +30,9 @@ import android.widget.LinearLayout; import com.android.systemui.R; import com.android.systemui.statusbar.policy.NetworkController; import android.telephony.SignalStrength; import android.telephony.TelephonyManager; // Intimately tied to the design of res/layout/signal_cluster_view.xml public class SignalClusterView extends LinearLayout Loading Loading @@ -218,12 +221,13 @@ public class SignalClusterView mMobileCdma1xOnlyVisible = false; } } else if (mStyle == STATUS_BAR_STYLE_DATA_VOICE) { if (showBothDataAndVoice() || getMobileVoiceId(strengthIcon) != 0) { if (showBothDataAndVoice() && getMobileVoiceId() != 0) { mMobileStrengthId = 0; mMobileDataVoiceVisible = true; mMobileSignalDataId = strengthIcon; mMobileSignalVoiceId = getMobileVoiceId(mMobileSignalDataId); mMobileSignalVoiceId = getMobileVoiceId(); } else { mMobileStrengthId = convertMobileStrengthIcon(mMobileStrengthId); mMobileDataVoiceVisible = false; } } else { Loading Loading @@ -400,10 +404,19 @@ public class SignalClusterView return false; } return (mMobileTypeId == R.drawable.stat_sys_data_connected_3g) || (mMobileTypeId == R.drawable.stat_sys_data_connected_4g) || (mMobileTypeId == R.drawable.stat_sys_data_fully_connected_3g) || (mMobileTypeId == R.drawable.stat_sys_data_fully_connected_4g); if (mNC == null) { return false; } boolean ret = false; int dataType = mNC.getDataNetworkType(); int voiceType = mNC.getVoiceNetworkType(); if ((dataType == TelephonyManager.NETWORK_TYPE_TD_SCDMA || dataType == TelephonyManager.NETWORK_TYPE_LTE) && voiceType == TelephonyManager.NETWORK_TYPE_GSM) { ret = true; } return ret; } private boolean showBoth3gAnd1x() { Loading @@ -427,48 +440,96 @@ public class SignalClusterView return mMobileTypeId == R.drawable.stat_sys_data_fully_connected_roam; } private int getMobileVoiceId(int icon) { int returnVal = 0; private int getMobileVoiceId() { if (mNC == null) { return 0; } int retValue = 0; int level = mNC.getGsmSignalLevel(); switch(level){ case SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN: retValue = R.drawable.stat_sys_signal_0_gsm; break; case SignalStrength.SIGNAL_STRENGTH_POOR: retValue = R.drawable.stat_sys_signal_1_gsm; break; case SignalStrength.SIGNAL_STRENGTH_MODERATE: retValue = R.drawable.stat_sys_signal_2_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GOOD: retValue = R.drawable.stat_sys_signal_3_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GREAT: retValue = R.drawable.stat_sys_signal_4_gsm; break; default: break; } return retValue; } private int convertMobileStrengthIcon(int icon) { int returnVal = icon; switch(icon){ case R.drawable.stat_sys_signal_0_3g: returnVal = R.drawable.stat_sys_signal_0_3g_default; break; case R.drawable.stat_sys_signal_0_4g: returnVal = R.drawable.stat_sys_signal_0_gsm; returnVal = R.drawable.stat_sys_signal_0_4g_default; break; case R.drawable.stat_sys_signal_1_3g: returnVal = R.drawable.stat_sys_signal_1_3g_default; break; case R.drawable.stat_sys_signal_1_4g: returnVal = R.drawable.stat_sys_signal_1_gsm; returnVal = R.drawable.stat_sys_signal_1_4g_default; break; case R.drawable.stat_sys_signal_2_3g: returnVal = R.drawable.stat_sys_signal_2_3g_default; break; case R.drawable.stat_sys_signal_2_4g: returnVal = R.drawable.stat_sys_signal_2_gsm; returnVal = R.drawable.stat_sys_signal_2_4g_default; break; case R.drawable.stat_sys_signal_3_3g: returnVal = R.drawable.stat_sys_signal_3_3g_default; break; case R.drawable.stat_sys_signal_3_4g: returnVal = R.drawable.stat_sys_signal_3_gsm; returnVal = R.drawable.stat_sys_signal_3_4g_default; break; case R.drawable.stat_sys_signal_4_3g: returnVal = R.drawable.stat_sys_signal_4_3g_default; break; case R.drawable.stat_sys_signal_4_4g: returnVal = R.drawable.stat_sys_signal_4_gsm; returnVal = R.drawable.stat_sys_signal_4_4g_default; break; case R.drawable.stat_sys_signal_0_3g_fully: returnVal = R.drawable.stat_sys_signal_0_3g_default_fully; break; case R.drawable.stat_sys_signal_0_4g_fully: returnVal = R.drawable.stat_sys_signal_0_gsm_fully; returnVal = R.drawable.stat_sys_signal_0_4g_default_fully; break; case R.drawable.stat_sys_signal_1_3g_fully: returnVal = R.drawable.stat_sys_signal_1_3g_default_fully; break; case R.drawable.stat_sys_signal_1_4g_fully: returnVal = R.drawable.stat_sys_signal_1_gsm_fully; returnVal = R.drawable.stat_sys_signal_1_4g_default_fully; break; case R.drawable.stat_sys_signal_2_3g_fully: returnVal = R.drawable.stat_sys_signal_2_3g_default_fully; break; case R.drawable.stat_sys_signal_2_4g_fully: returnVal = R.drawable.stat_sys_signal_2_gsm_fully; returnVal = R.drawable.stat_sys_signal_2_4g_default_fully; break; case R.drawable.stat_sys_signal_3_3g_fully: returnVal = R.drawable.stat_sys_signal_3_3g_default_fully; break; case R.drawable.stat_sys_signal_3_4g_fully: returnVal = R.drawable.stat_sys_signal_3_gsm_fully; returnVal = R.drawable.stat_sys_signal_3_4g_default_fully; break; case R.drawable.stat_sys_signal_4_3g_fully: returnVal = R.drawable.stat_sys_signal_4_3g_default_fully; break; case R.drawable.stat_sys_signal_4_4g_fully: returnVal = R.drawable.stat_sys_signal_4_gsm_fully; returnVal = R.drawable.stat_sys_signal_4_4g_default_fully; break; default: break; Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/MSimNetworkController.java +21 −0 Original line number Diff line number Diff line Loading @@ -1211,6 +1211,27 @@ public class MSimNetworkController extends NetworkController { setCarrierText(); } public int getVoiceNetworkType(int sub) { if (mMSimServiceState[sub] == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mMSimServiceState[sub].getVoiceNetworkType(); } public int getDataNetworkType(int sub) { if (mMSimServiceState[sub] == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mMSimServiceState[sub].getDataNetworkType(); } public int getGsmSignalLevel(int sub) { if (mMSimSignalStrength[sub] == null) { return mMSimSignalStrength[sub].SIGNAL_STRENGTH_NONE_OR_UNKNOWN; } return mMSimSignalStrength[sub].getGsmLevel(); } public void dump(FileDescriptor fd, PrintWriter pw, String[] args, int subscription) { pw.println("NetworkController for SUB : " + subscription + " state:"); pw.println(String.format(" %s network type %d (%s)", Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java +21 −0 Original line number Diff line number Diff line Loading @@ -1400,6 +1400,27 @@ public class NetworkController extends BroadcastReceiver implements DemoMode { setCarrierText(); } public int getVoiceNetworkType() { if (mServiceState == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mServiceState.getVoiceNetworkType(); } public int getDataNetworkType() { if (mServiceState == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mServiceState.getDataNetworkType(); } public int getGsmSignalLevel() { if (mSignalStrength == null) { return SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN; } return mSignalStrength.getGsmLevel(); } public void dump(FileDescriptor fd, PrintWriter pw, String[] args) { pw.println("NetworkController state:"); pw.println(String.format(" %s network type %d (%s)", Loading Loading
packages/SystemUI/src/com/android/systemui/statusbar/MSimSignalClusterView.java +78 −18 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ package com.android.systemui.statusbar; import android.content.Context; import android.telephony.SignalStrength; import android.telephony.MSimTelephonyManager; import android.telephony.TelephonyManager; import android.util.AttributeSet; Loading Loading @@ -288,13 +289,14 @@ public class MSimSignalClusterView } } else if (mStyle == STATUS_BAR_STYLE_DATA_VOICE) { if (showBothDataAndVoice(subscription) || getMobileVoiceId(strengthIcon) != 0) { && getMobileVoiceId(subscription) != 0) { mMobileStrengthId[subscription] = 0; mMobileDataVoiceVisible[subscription] = true; mMobileSignalDataId[subscription] = strengthIcon; mMobileSignalVoiceId[subscription] = getMobileVoiceId(mMobileSignalDataId[subscription]); = getMobileVoiceId(subscription); } else { mMobileStrengthId[subscription] = convertMobileStrengthIcon(mMobileStrengthId[subscription]); mMobileDataVoiceVisible[subscription] = false; } } else { Loading Loading @@ -454,10 +456,19 @@ public class MSimSignalClusterView return false; } return (mMobileTypeId[sub] == R.drawable.stat_sys_data_connected_3g) || (mMobileTypeId[sub] == R.drawable.stat_sys_data_connected_4g) || (mMobileTypeId[sub] == R.drawable.stat_sys_data_fully_connected_3g) || (mMobileTypeId[sub] == R.drawable.stat_sys_data_fully_connected_4g); if (mMSimNC == null) { return false; } boolean ret = false; int dataType = mMSimNC.getDataNetworkType(sub); int voiceType = mMSimNC.getVoiceNetworkType(sub); if ((dataType == TelephonyManager.NETWORK_TYPE_TD_SCDMA || dataType == TelephonyManager.NETWORK_TYPE_LTE) && voiceType == TelephonyManager.NETWORK_TYPE_GSM) { ret = true; } return ret; } private boolean showBoth3gAnd1x() { Loading @@ -481,48 +492,97 @@ public class MSimSignalClusterView return mMobileTypeId[0] == R.drawable.stat_sys_data_fully_connected_roam; } private int getMobileVoiceId(int icon) { int returnVal = 0; private int getMobileVoiceId(int sub) { if (mMSimNC == null) { return 0; } int retValue = 0; int level = mMSimNC.getGsmSignalLevel(sub); switch(level){ case SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN: retValue = R.drawable.stat_sys_signal_0_gsm; break; case SignalStrength.SIGNAL_STRENGTH_POOR: retValue = R.drawable.stat_sys_signal_1_gsm; break; case SignalStrength.SIGNAL_STRENGTH_MODERATE: retValue = R.drawable.stat_sys_signal_2_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GOOD: retValue = R.drawable.stat_sys_signal_3_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GREAT: retValue = R.drawable.stat_sys_signal_4_gsm; break; default: break; } return retValue; } private int convertMobileStrengthIcon(int icon) { int returnVal = icon; switch(icon){ case R.drawable.stat_sys_signal_0_3g: returnVal = R.drawable.stat_sys_signal_0_3g_default; break; case R.drawable.stat_sys_signal_0_4g: returnVal = R.drawable.stat_sys_signal_0_gsm; returnVal = R.drawable.stat_sys_signal_0_4g_default; break; case R.drawable.stat_sys_signal_1_3g: returnVal = R.drawable.stat_sys_signal_1_3g_default; break; case R.drawable.stat_sys_signal_1_4g: returnVal = R.drawable.stat_sys_signal_1_gsm; returnVal = R.drawable.stat_sys_signal_1_4g_default; break; case R.drawable.stat_sys_signal_2_3g: returnVal = R.drawable.stat_sys_signal_2_3g_default; break; case R.drawable.stat_sys_signal_2_4g: returnVal = R.drawable.stat_sys_signal_2_gsm; returnVal = R.drawable.stat_sys_signal_2_4g_default; break; case R.drawable.stat_sys_signal_3_3g: returnVal = R.drawable.stat_sys_signal_3_3g_default; break; case R.drawable.stat_sys_signal_3_4g: returnVal = R.drawable.stat_sys_signal_3_gsm; returnVal = R.drawable.stat_sys_signal_3_4g_default; break; case R.drawable.stat_sys_signal_4_3g: returnVal = R.drawable.stat_sys_signal_4_3g_default; break; case R.drawable.stat_sys_signal_4_4g: returnVal = R.drawable.stat_sys_signal_4_gsm; returnVal = R.drawable.stat_sys_signal_4_4g_default; break; case R.drawable.stat_sys_signal_0_3g_fully: returnVal = R.drawable.stat_sys_signal_0_3g_default_fully; break; case R.drawable.stat_sys_signal_0_4g_fully: returnVal = R.drawable.stat_sys_signal_0_gsm_fully; returnVal = R.drawable.stat_sys_signal_0_4g_default_fully; break; case R.drawable.stat_sys_signal_1_3g_fully: returnVal = R.drawable.stat_sys_signal_1_3g_default_fully; break; case R.drawable.stat_sys_signal_1_4g_fully: returnVal = R.drawable.stat_sys_signal_1_gsm_fully; returnVal = R.drawable.stat_sys_signal_1_4g_default_fully; break; case R.drawable.stat_sys_signal_2_3g_fully: returnVal = R.drawable.stat_sys_signal_2_3g_default_fully; break; case R.drawable.stat_sys_signal_2_4g_fully: returnVal = R.drawable.stat_sys_signal_2_gsm_fully; returnVal = R.drawable.stat_sys_signal_2_4g_default_fully; break; case R.drawable.stat_sys_signal_3_3g_fully: returnVal = R.drawable.stat_sys_signal_3_3g_default_fully; break; case R.drawable.stat_sys_signal_3_4g_fully: returnVal = R.drawable.stat_sys_signal_3_gsm_fully; returnVal = R.drawable.stat_sys_signal_3_4g_default_fully; break; case R.drawable.stat_sys_signal_4_3g_fully: returnVal = R.drawable.stat_sys_signal_4_3g_default_fully; break; case R.drawable.stat_sys_signal_4_4g_fully: returnVal = R.drawable.stat_sys_signal_4_gsm_fully; returnVal = R.drawable.stat_sys_signal_4_4g_default_fully; break; default: break; Loading
packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java +79 −18 Original line number Diff line number Diff line Loading @@ -30,6 +30,9 @@ import android.widget.LinearLayout; import com.android.systemui.R; import com.android.systemui.statusbar.policy.NetworkController; import android.telephony.SignalStrength; import android.telephony.TelephonyManager; // Intimately tied to the design of res/layout/signal_cluster_view.xml public class SignalClusterView extends LinearLayout Loading Loading @@ -218,12 +221,13 @@ public class SignalClusterView mMobileCdma1xOnlyVisible = false; } } else if (mStyle == STATUS_BAR_STYLE_DATA_VOICE) { if (showBothDataAndVoice() || getMobileVoiceId(strengthIcon) != 0) { if (showBothDataAndVoice() && getMobileVoiceId() != 0) { mMobileStrengthId = 0; mMobileDataVoiceVisible = true; mMobileSignalDataId = strengthIcon; mMobileSignalVoiceId = getMobileVoiceId(mMobileSignalDataId); mMobileSignalVoiceId = getMobileVoiceId(); } else { mMobileStrengthId = convertMobileStrengthIcon(mMobileStrengthId); mMobileDataVoiceVisible = false; } } else { Loading Loading @@ -400,10 +404,19 @@ public class SignalClusterView return false; } return (mMobileTypeId == R.drawable.stat_sys_data_connected_3g) || (mMobileTypeId == R.drawable.stat_sys_data_connected_4g) || (mMobileTypeId == R.drawable.stat_sys_data_fully_connected_3g) || (mMobileTypeId == R.drawable.stat_sys_data_fully_connected_4g); if (mNC == null) { return false; } boolean ret = false; int dataType = mNC.getDataNetworkType(); int voiceType = mNC.getVoiceNetworkType(); if ((dataType == TelephonyManager.NETWORK_TYPE_TD_SCDMA || dataType == TelephonyManager.NETWORK_TYPE_LTE) && voiceType == TelephonyManager.NETWORK_TYPE_GSM) { ret = true; } return ret; } private boolean showBoth3gAnd1x() { Loading @@ -427,48 +440,96 @@ public class SignalClusterView return mMobileTypeId == R.drawable.stat_sys_data_fully_connected_roam; } private int getMobileVoiceId(int icon) { int returnVal = 0; private int getMobileVoiceId() { if (mNC == null) { return 0; } int retValue = 0; int level = mNC.getGsmSignalLevel(); switch(level){ case SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN: retValue = R.drawable.stat_sys_signal_0_gsm; break; case SignalStrength.SIGNAL_STRENGTH_POOR: retValue = R.drawable.stat_sys_signal_1_gsm; break; case SignalStrength.SIGNAL_STRENGTH_MODERATE: retValue = R.drawable.stat_sys_signal_2_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GOOD: retValue = R.drawable.stat_sys_signal_3_gsm; break; case SignalStrength.SIGNAL_STRENGTH_GREAT: retValue = R.drawable.stat_sys_signal_4_gsm; break; default: break; } return retValue; } private int convertMobileStrengthIcon(int icon) { int returnVal = icon; switch(icon){ case R.drawable.stat_sys_signal_0_3g: returnVal = R.drawable.stat_sys_signal_0_3g_default; break; case R.drawable.stat_sys_signal_0_4g: returnVal = R.drawable.stat_sys_signal_0_gsm; returnVal = R.drawable.stat_sys_signal_0_4g_default; break; case R.drawable.stat_sys_signal_1_3g: returnVal = R.drawable.stat_sys_signal_1_3g_default; break; case R.drawable.stat_sys_signal_1_4g: returnVal = R.drawable.stat_sys_signal_1_gsm; returnVal = R.drawable.stat_sys_signal_1_4g_default; break; case R.drawable.stat_sys_signal_2_3g: returnVal = R.drawable.stat_sys_signal_2_3g_default; break; case R.drawable.stat_sys_signal_2_4g: returnVal = R.drawable.stat_sys_signal_2_gsm; returnVal = R.drawable.stat_sys_signal_2_4g_default; break; case R.drawable.stat_sys_signal_3_3g: returnVal = R.drawable.stat_sys_signal_3_3g_default; break; case R.drawable.stat_sys_signal_3_4g: returnVal = R.drawable.stat_sys_signal_3_gsm; returnVal = R.drawable.stat_sys_signal_3_4g_default; break; case R.drawable.stat_sys_signal_4_3g: returnVal = R.drawable.stat_sys_signal_4_3g_default; break; case R.drawable.stat_sys_signal_4_4g: returnVal = R.drawable.stat_sys_signal_4_gsm; returnVal = R.drawable.stat_sys_signal_4_4g_default; break; case R.drawable.stat_sys_signal_0_3g_fully: returnVal = R.drawable.stat_sys_signal_0_3g_default_fully; break; case R.drawable.stat_sys_signal_0_4g_fully: returnVal = R.drawable.stat_sys_signal_0_gsm_fully; returnVal = R.drawable.stat_sys_signal_0_4g_default_fully; break; case R.drawable.stat_sys_signal_1_3g_fully: returnVal = R.drawable.stat_sys_signal_1_3g_default_fully; break; case R.drawable.stat_sys_signal_1_4g_fully: returnVal = R.drawable.stat_sys_signal_1_gsm_fully; returnVal = R.drawable.stat_sys_signal_1_4g_default_fully; break; case R.drawable.stat_sys_signal_2_3g_fully: returnVal = R.drawable.stat_sys_signal_2_3g_default_fully; break; case R.drawable.stat_sys_signal_2_4g_fully: returnVal = R.drawable.stat_sys_signal_2_gsm_fully; returnVal = R.drawable.stat_sys_signal_2_4g_default_fully; break; case R.drawable.stat_sys_signal_3_3g_fully: returnVal = R.drawable.stat_sys_signal_3_3g_default_fully; break; case R.drawable.stat_sys_signal_3_4g_fully: returnVal = R.drawable.stat_sys_signal_3_gsm_fully; returnVal = R.drawable.stat_sys_signal_3_4g_default_fully; break; case R.drawable.stat_sys_signal_4_3g_fully: returnVal = R.drawable.stat_sys_signal_4_3g_default_fully; break; case R.drawable.stat_sys_signal_4_4g_fully: returnVal = R.drawable.stat_sys_signal_4_gsm_fully; returnVal = R.drawable.stat_sys_signal_4_4g_default_fully; break; default: break; Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/MSimNetworkController.java +21 −0 Original line number Diff line number Diff line Loading @@ -1211,6 +1211,27 @@ public class MSimNetworkController extends NetworkController { setCarrierText(); } public int getVoiceNetworkType(int sub) { if (mMSimServiceState[sub] == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mMSimServiceState[sub].getVoiceNetworkType(); } public int getDataNetworkType(int sub) { if (mMSimServiceState[sub] == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mMSimServiceState[sub].getDataNetworkType(); } public int getGsmSignalLevel(int sub) { if (mMSimSignalStrength[sub] == null) { return mMSimSignalStrength[sub].SIGNAL_STRENGTH_NONE_OR_UNKNOWN; } return mMSimSignalStrength[sub].getGsmLevel(); } public void dump(FileDescriptor fd, PrintWriter pw, String[] args, int subscription) { pw.println("NetworkController for SUB : " + subscription + " state:"); pw.println(String.format(" %s network type %d (%s)", Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java +21 −0 Original line number Diff line number Diff line Loading @@ -1400,6 +1400,27 @@ public class NetworkController extends BroadcastReceiver implements DemoMode { setCarrierText(); } public int getVoiceNetworkType() { if (mServiceState == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mServiceState.getVoiceNetworkType(); } public int getDataNetworkType() { if (mServiceState == null) { return TelephonyManager.NETWORK_TYPE_UNKNOWN; } return mServiceState.getDataNetworkType(); } public int getGsmSignalLevel() { if (mSignalStrength == null) { return SignalStrength.SIGNAL_STRENGTH_NONE_OR_UNKNOWN; } return mSignalStrength.getGsmLevel(); } public void dump(FileDescriptor fd, PrintWriter pw, String[] args) { pw.println("NetworkController state:"); pw.println(String.format(" %s network type %d (%s)", Loading