From b48ec2f772e2009f88a853f6372f4bfb6aa19223 Mon Sep 17 00:00:00 2001 From: songferngwang Date: Thu, 30 May 2024 09:24:25 +0000 Subject: [PATCH] To hide the mobile data when there is no active sim Bug: 343633243 Test: verified the UI Change-Id: I77055a9c1cdb7e94c0339f4255b4799b7b6e02ac --- .../network/NetworkCellularGroupProvider.kt | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt b/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt index 98d83402339..68869d8e903 100644 --- a/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt +++ b/src/com/android/settings/spa/network/NetworkCellularGroupProvider.kt @@ -31,6 +31,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.MutableIntState import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableIntStateOf +import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.saveable.rememberSaveable @@ -108,7 +109,9 @@ open class NetworkCellularGroupProvider : SettingsPageProvider { var nonDdsRemember = rememberSaveable { mutableIntStateOf(SubscriptionManager.INVALID_SUBSCRIPTION_ID) } - + var showMobileDataSection = rememberSaveable { + mutableStateOf(false) + } val subscriptionViewModel = viewModel() CollectAirplaneModeAndFinishIfOn() @@ -125,13 +128,18 @@ open class NetworkCellularGroupProvider : SettingsPageProvider { val selectableSubscriptionInfoList by subscriptionViewModel .selectableSubscriptionInfoListFlow .collectAsStateWithLifecycle(initialValue = emptyList()) - + showMobileDataSection.value = selectableSubscriptionInfoList + .filter { subInfo -> subInfo.simSlotIndex > -1 } + .size > 0 val stringSims = stringResource(R.string.provider_network_settings_title) RegularScaffold(title = stringSims) { SimsSection(selectableSubscriptionInfoList) - MobileDataSectionImpl(mobileDataSelectedId, - nonDdsRemember, - ) + if(showMobileDataSection.value) { + MobileDataSectionImpl( + mobileDataSelectedId, + nonDdsRemember, + ) + } PrimarySimSectionImpl( subscriptionViewModel.selectableSubscriptionInfoListFlow,