Add the mobile data into new SIMs page

Bug: 329584989
Test: verify UI.
atest TelephonyRepositoryTest

Change-Id: Ia00ac287ffd0d15ba0c9350b731c3afc1a04b7a0
This commit is contained in:
songferngwang
2024-03-29 08:29:29 +00:00
parent fd27947e6f
commit e471604d32
7 changed files with 237 additions and 44 deletions

View File

@@ -45,15 +45,18 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.LocalLifecycleOwner
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.lifecycle.LifecycleRegistry
import com.android.settings.R
import com.android.settings.SidecarFragment
import com.android.settings.network.telephony.SubscriptionActionDialogActivity
import com.android.settings.network.telephony.ToggleSubscriptionDialogActivity
import com.android.settings.spa.SpaActivity.Companion.startSpaActivity
import com.android.settings.spa.network.SimOnboardingPageProvider.getRoute
import com.android.settings.wifi.WifiPickerTrackerHelper
import com.android.settingslib.spa.SpaBaseDialogActivity
import com.android.settingslib.spa.framework.theme.SettingsDimension
import com.android.settingslib.spa.framework.util.collectLatestWithLifecycle
@@ -73,6 +76,8 @@ import kotlinx.coroutines.launch
class SimOnboardingActivity : SpaBaseDialogActivity() {
lateinit var scope: CoroutineScope
lateinit var wifiPickerTrackerHelper: WifiPickerTrackerHelper
lateinit var context: Context
lateinit var showStartingDialog: MutableState<Boolean>
lateinit var showError: MutableState<ErrorType>
lateinit var showProgressDialog: MutableState<Boolean>
@@ -85,6 +90,7 @@ class SimOnboardingActivity : SpaBaseDialogActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
if (!this.userManager.isAdminUser) {
Log.e(TAG, "It is not the admin user. Unable to toggle subscription.")
finish()
@@ -151,7 +157,10 @@ class SimOnboardingActivity : SpaBaseDialogActivity() {
CallbackType.CALLBACK_SETUP_PRIMARY_SIM -> {
scope.launch {
onboardingService.startSetupPrimarySim(this@SimOnboardingActivity)
onboardingService.startSetupPrimarySim(
this@SimOnboardingActivity,
wifiPickerTrackerHelper
)
}
}
@@ -183,6 +192,12 @@ class SimOnboardingActivity : SpaBaseDialogActivity() {
showDsdsProgressDialog = remember { mutableStateOf(false) }
showRestartDialog = remember { mutableStateOf(false) }
scope = rememberCoroutineScope()
context = LocalContext.current
val lifecycleOwner = LocalLifecycleOwner.current
wifiPickerTrackerHelper = WifiPickerTrackerHelper(
LifecycleRegistry(lifecycleOwner), context,
null /* WifiPickerTrackerCallback */
)
registerSidecarReceiverFlow()