Loading packages/SystemUI/src/com/android/keyguard/CarrierTextController.java +5 −0 Original line number Diff line number Diff line Loading @@ -303,6 +303,11 @@ public class CarrierTextController { } } else { subs = mKeyguardUpdateMonitor.getSubscriptionInfo(false); if (subs == null) { subs = new ArrayList<>(); } else { filterMobileSubscriptionInSameGroup(subs); } } return subs; } Loading packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +20 −2 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import static android.os.BatteryManager.EXTRA_MAX_CHARGING_CURRENT; import static android.os.BatteryManager.EXTRA_MAX_CHARGING_VOLTAGE; import static android.os.BatteryManager.EXTRA_PLUGGED; import static android.os.BatteryManager.EXTRA_STATUS; import static android.telephony.PhoneStateListener.LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE; import android.annotation.AnyThread; import android.annotation.MainThread; Loading Loading @@ -70,6 +71,7 @@ import android.os.UserManager; import android.provider.Settings; import android.service.dreams.DreamService; import android.service.dreams.IDreamManager; import android.telephony.PhoneStateListener; import android.telephony.ServiceState; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; Loading Loading @@ -382,6 +384,13 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { } }; private PhoneStateListener mPhoneStateListener = new PhoneStateListener() { @Override public void onActiveDataSubscriptionIdChanged(int subId) { mHandler.sendEmptyMessage(MSG_SIM_SUBSCRIPTION_INFO_CHANGED); } }; private OnSubscriptionsChangedListener mSubscriptionListener = new OnSubscriptionsChangedListener() { @Override Loading Loading @@ -431,7 +440,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { private void handleSimSubscriptionInfoChanged() { if (DEBUG_SIM_STATES) { Log.v(TAG, "onSubscriptionInfoChanged()"); List<SubscriptionInfo> sil = mSubscriptionManager.getActiveSubscriptionInfoList(); List<SubscriptionInfo> sil = mSubscriptionManager.getActiveSubscriptionInfoList(false); if (sil != null) { for (SubscriptionInfo subInfo : sil) { Log.v(TAG, "SubInfo:" + subInfo); Loading Loading @@ -483,7 +492,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { public List<SubscriptionInfo> getSubscriptionInfo(boolean forceReload) { List<SubscriptionInfo> sil = mSubscriptionInfo; if (sil == null || forceReload) { sil = mSubscriptionManager.getActiveSubscriptionInfoList(); sil = mSubscriptionManager.getActiveSubscriptionInfoList(false); } if (sil == null) { // getActiveSubscriptionInfoList was null callers expect an empty list. Loading Loading @@ -1080,6 +1089,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { } mHandler.sendMessage( mHandler.obtainMessage(MSG_SERVICE_STATE_CHANGE, subId, 0, serviceState)); } else if (TelephonyIntents.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED.equals(action)) { mHandler.sendEmptyMessage(MSG_SIM_SUBSCRIPTION_INFO_CHANGED); } else if (DevicePolicyManager.ACTION_DEVICE_POLICY_MANAGER_STATE_CHANGED.equals( action)) { mHandler.sendEmptyMessage(MSG_DEVICE_POLICY_MANAGER_STATE_CHANGED); Loading Loading @@ -1490,6 +1501,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { filter.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED); filter.addAction(TelephonyIntents.ACTION_SIM_STATE_CHANGED); filter.addAction(TelephonyIntents.ACTION_SERVICE_STATE_CHANGED); filter.addAction(TelephonyIntents.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED); filter.addAction(TelephonyManager.ACTION_PHONE_STATE_CHANGED); filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION); filter.addAction(DevicePolicyManager.ACTION_DEVICE_POLICY_MANAGER_STATE_CHANGED); Loading Loading @@ -1563,6 +1575,12 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { mDevicePolicyManager = context.getSystemService(DevicePolicyManager.class); mLogoutEnabled = mDevicePolicyManager.isLogoutEnabled(); updateAirplaneModeState(); TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); if (telephony != null) { telephony.listen(mPhoneStateListener, LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE); } } private void updateAirplaneModeState() { Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java +3 −3 Original line number Diff line number Diff line Loading @@ -376,9 +376,9 @@ public class MobileSignalController extends SignalController< } private void updateDataSim() { int defaultDataSub = mDefaults.getDefaultDataSubId(); if (SubscriptionManager.isValidSubscriptionId(defaultDataSub)) { mCurrentState.dataSim = defaultDataSub == mSubscriptionInfo.getSubscriptionId(); int activeDataSubId = mDefaults.getActiveDataSubId(); if (SubscriptionManager.isValidSubscriptionId(activeDataSubId)) { mCurrentState.dataSim = activeDataSubId == mSubscriptionInfo.getSubscriptionId(); } else { // There doesn't seem to be a data sim selected, however if // there isn't a MobileSignalController with dataSim set, then Loading packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java +5 −1 Original line number Diff line number Diff line Loading @@ -361,7 +361,7 @@ public class NetworkControllerImpl extends BroadcastReceiver } private MobileSignalController getDataController() { int dataSubId = mSubDefaults.getDefaultDataSubId(); int dataSubId = mSubDefaults.getActiveDataSubId(); if (!SubscriptionManager.isValidSubscriptionId(dataSubId)) { if (DEBUG) Log.e(TAG, "No data sim selected"); return mDefaultSignalController; Loading Loading @@ -1098,6 +1098,10 @@ public class NetworkControllerImpl extends BroadcastReceiver public int getDefaultDataSubId() { return SubscriptionManager.getDefaultDataSubscriptionId(); } public int getActiveDataSubId() { return SubscriptionManager.getActiveDataSubscriptionId(); } } @VisibleForTesting Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java +1 −0 Original line number Diff line number Diff line Loading @@ -181,6 +181,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase { protected void setDefaultSubId(int subId) { when(mMockSubDefaults.getDefaultDataSubId()).thenReturn(subId); when(mMockSubDefaults.getDefaultVoiceSubId()).thenReturn(subId); when(mMockSubDefaults.getActiveDataSubId()).thenReturn(subId); } protected void setSubscriptions(int... subIds) { Loading Loading
packages/SystemUI/src/com/android/keyguard/CarrierTextController.java +5 −0 Original line number Diff line number Diff line Loading @@ -303,6 +303,11 @@ public class CarrierTextController { } } else { subs = mKeyguardUpdateMonitor.getSubscriptionInfo(false); if (subs == null) { subs = new ArrayList<>(); } else { filterMobileSubscriptionInSameGroup(subs); } } return subs; } Loading
packages/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java +20 −2 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import static android.os.BatteryManager.EXTRA_MAX_CHARGING_CURRENT; import static android.os.BatteryManager.EXTRA_MAX_CHARGING_VOLTAGE; import static android.os.BatteryManager.EXTRA_PLUGGED; import static android.os.BatteryManager.EXTRA_STATUS; import static android.telephony.PhoneStateListener.LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE; import android.annotation.AnyThread; import android.annotation.MainThread; Loading Loading @@ -70,6 +71,7 @@ import android.os.UserManager; import android.provider.Settings; import android.service.dreams.DreamService; import android.service.dreams.IDreamManager; import android.telephony.PhoneStateListener; import android.telephony.ServiceState; import android.telephony.SubscriptionInfo; import android.telephony.SubscriptionManager; Loading Loading @@ -382,6 +384,13 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { } }; private PhoneStateListener mPhoneStateListener = new PhoneStateListener() { @Override public void onActiveDataSubscriptionIdChanged(int subId) { mHandler.sendEmptyMessage(MSG_SIM_SUBSCRIPTION_INFO_CHANGED); } }; private OnSubscriptionsChangedListener mSubscriptionListener = new OnSubscriptionsChangedListener() { @Override Loading Loading @@ -431,7 +440,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { private void handleSimSubscriptionInfoChanged() { if (DEBUG_SIM_STATES) { Log.v(TAG, "onSubscriptionInfoChanged()"); List<SubscriptionInfo> sil = mSubscriptionManager.getActiveSubscriptionInfoList(); List<SubscriptionInfo> sil = mSubscriptionManager.getActiveSubscriptionInfoList(false); if (sil != null) { for (SubscriptionInfo subInfo : sil) { Log.v(TAG, "SubInfo:" + subInfo); Loading Loading @@ -483,7 +492,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { public List<SubscriptionInfo> getSubscriptionInfo(boolean forceReload) { List<SubscriptionInfo> sil = mSubscriptionInfo; if (sil == null || forceReload) { sil = mSubscriptionManager.getActiveSubscriptionInfoList(); sil = mSubscriptionManager.getActiveSubscriptionInfoList(false); } if (sil == null) { // getActiveSubscriptionInfoList was null callers expect an empty list. Loading Loading @@ -1080,6 +1089,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { } mHandler.sendMessage( mHandler.obtainMessage(MSG_SERVICE_STATE_CHANGE, subId, 0, serviceState)); } else if (TelephonyIntents.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED.equals(action)) { mHandler.sendEmptyMessage(MSG_SIM_SUBSCRIPTION_INFO_CHANGED); } else if (DevicePolicyManager.ACTION_DEVICE_POLICY_MANAGER_STATE_CHANGED.equals( action)) { mHandler.sendEmptyMessage(MSG_DEVICE_POLICY_MANAGER_STATE_CHANGED); Loading Loading @@ -1490,6 +1501,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { filter.addAction(Intent.ACTION_AIRPLANE_MODE_CHANGED); filter.addAction(TelephonyIntents.ACTION_SIM_STATE_CHANGED); filter.addAction(TelephonyIntents.ACTION_SERVICE_STATE_CHANGED); filter.addAction(TelephonyIntents.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED); filter.addAction(TelephonyManager.ACTION_PHONE_STATE_CHANGED); filter.addAction(AudioManager.RINGER_MODE_CHANGED_ACTION); filter.addAction(DevicePolicyManager.ACTION_DEVICE_POLICY_MANAGER_STATE_CHANGED); Loading Loading @@ -1563,6 +1575,12 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener { mDevicePolicyManager = context.getSystemService(DevicePolicyManager.class); mLogoutEnabled = mDevicePolicyManager.isLogoutEnabled(); updateAirplaneModeState(); TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); if (telephony != null) { telephony.listen(mPhoneStateListener, LISTEN_ACTIVE_DATA_SUBSCRIPTION_ID_CHANGE); } } private void updateAirplaneModeState() { Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java +3 −3 Original line number Diff line number Diff line Loading @@ -376,9 +376,9 @@ public class MobileSignalController extends SignalController< } private void updateDataSim() { int defaultDataSub = mDefaults.getDefaultDataSubId(); if (SubscriptionManager.isValidSubscriptionId(defaultDataSub)) { mCurrentState.dataSim = defaultDataSub == mSubscriptionInfo.getSubscriptionId(); int activeDataSubId = mDefaults.getActiveDataSubId(); if (SubscriptionManager.isValidSubscriptionId(activeDataSubId)) { mCurrentState.dataSim = activeDataSubId == mSubscriptionInfo.getSubscriptionId(); } else { // There doesn't seem to be a data sim selected, however if // there isn't a MobileSignalController with dataSim set, then Loading
packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkControllerImpl.java +5 −1 Original line number Diff line number Diff line Loading @@ -361,7 +361,7 @@ public class NetworkControllerImpl extends BroadcastReceiver } private MobileSignalController getDataController() { int dataSubId = mSubDefaults.getDefaultDataSubId(); int dataSubId = mSubDefaults.getActiveDataSubId(); if (!SubscriptionManager.isValidSubscriptionId(dataSubId)) { if (DEBUG) Log.e(TAG, "No data sim selected"); return mDefaultSignalController; Loading Loading @@ -1098,6 +1098,10 @@ public class NetworkControllerImpl extends BroadcastReceiver public int getDefaultDataSubId() { return SubscriptionManager.getDefaultDataSubscriptionId(); } public int getActiveDataSubId() { return SubscriptionManager.getActiveDataSubscriptionId(); } } @VisibleForTesting Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerBaseTest.java +1 −0 Original line number Diff line number Diff line Loading @@ -181,6 +181,7 @@ public class NetworkControllerBaseTest extends SysuiTestCase { protected void setDefaultSubId(int subId) { when(mMockSubDefaults.getDefaultDataSubId()).thenReturn(subId); when(mMockSubDefaults.getDefaultVoiceSubId()).thenReturn(subId); when(mMockSubDefaults.getActiveDataSubId()).thenReturn(subId); } protected void setSubscriptions(int... subIds) { Loading