Merge "Add the OtherSection for NetworkCellularGroupProvider" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
ceda48c70c
@@ -47,7 +47,7 @@ class MobileNetworkListFragment : DashboardFragment() {
|
|||||||
super.onCreate(icicle)
|
super.onCreate(icicle)
|
||||||
|
|
||||||
if (Flags.isDualSimOnboardingEnabled()) {
|
if (Flags.isDualSimOnboardingEnabled()) {
|
||||||
context?.startSpaActivity(NetworkCellularGroupProvider.name);
|
context?.startSpaActivity(NetworkCellularGroupProvider.fileName)
|
||||||
finish()
|
finish()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -118,7 +118,7 @@ open class SettingsSpaEnvironment(context: Context) : SpaEnvironment(context) {
|
|||||||
ApnEditPageProvider,
|
ApnEditPageProvider,
|
||||||
SimOnboardingPageProvider,
|
SimOnboardingPageProvider,
|
||||||
BatteryOptimizationModeAppListPageProvider,
|
BatteryOptimizationModeAppListPageProvider,
|
||||||
NetworkCellularGroupProvider,
|
NetworkCellularGroupProvider(),
|
||||||
WifiPrivacyPageProvider,
|
WifiPrivacyPageProvider,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@@ -75,8 +75,8 @@ import kotlinx.coroutines.withContext
|
|||||||
/**
|
/**
|
||||||
* Showing the sim onboarding which is the process flow of sim switching on.
|
* Showing the sim onboarding which is the process flow of sim switching on.
|
||||||
*/
|
*/
|
||||||
object NetworkCellularGroupProvider : SettingsPageProvider {
|
open class NetworkCellularGroupProvider : SettingsPageProvider {
|
||||||
override val name = "NetworkCellularGroupProvider"
|
override val name = fileName
|
||||||
|
|
||||||
private val owner = createSettingsPage()
|
private val owner = createSettingsPage()
|
||||||
|
|
||||||
@@ -85,7 +85,7 @@ object NetworkCellularGroupProvider : SettingsPageProvider {
|
|||||||
var defaultDataSubId: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
var defaultDataSubId: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
||||||
var nonDds: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
var nonDds: Int = SubscriptionManager.INVALID_SUBSCRIPTION_ID
|
||||||
|
|
||||||
fun buildInjectEntry() = SettingsEntryBuilder.createInject(owner = owner)
|
open fun buildInjectEntry() = SettingsEntryBuilder.createInject(owner = owner)
|
||||||
.setUiLayoutFn {
|
.setUiLayoutFn {
|
||||||
// never using
|
// never using
|
||||||
Preference(object : PreferenceModel {
|
Preference(object : PreferenceModel {
|
||||||
@@ -123,13 +123,26 @@ object NetworkCellularGroupProvider : SettingsPageProvider {
|
|||||||
nonDdsRemember.intValue = nonDds
|
nonDdsRemember.intValue = nonDds
|
||||||
}
|
}
|
||||||
|
|
||||||
PageImpl(
|
val selectableSubscriptionInfoList by subscriptionViewModel
|
||||||
|
.selectableSubscriptionInfoListFlow
|
||||||
|
.collectAsStateWithLifecycle(initialValue = emptyList())
|
||||||
|
|
||||||
|
val stringSims = stringResource(R.string.provider_network_settings_title)
|
||||||
|
RegularScaffold(title = stringSims) {
|
||||||
|
SimsSection(selectableSubscriptionInfoList)
|
||||||
|
MobileDataSectionImpl(mobileDataSelectedId,
|
||||||
|
nonDdsRemember,
|
||||||
|
)
|
||||||
|
|
||||||
|
PrimarySimSectionImpl(
|
||||||
subscriptionViewModel.selectableSubscriptionInfoListFlow,
|
subscriptionViewModel.selectableSubscriptionInfoListFlow,
|
||||||
callsSelectedId,
|
callsSelectedId,
|
||||||
textsSelectedId,
|
textsSelectedId,
|
||||||
mobileDataSelectedId,
|
mobileDataSelectedId,
|
||||||
nonDdsRemember
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
OtherSection()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun allOfFlows(context: Context,
|
private fun allOfFlows(context: Context,
|
||||||
@@ -139,7 +152,7 @@ object NetworkCellularGroupProvider : SettingsPageProvider {
|
|||||||
context.defaultVoiceSubscriptionFlow(),
|
context.defaultVoiceSubscriptionFlow(),
|
||||||
context.defaultSmsSubscriptionFlow(),
|
context.defaultSmsSubscriptionFlow(),
|
||||||
context.defaultDefaultDataSubscriptionFlow(),
|
context.defaultDefaultDataSubscriptionFlow(),
|
||||||
NetworkCellularGroupProvider::refreshUiStates,
|
this::refreshUiStates,
|
||||||
).flowOn(Dispatchers.Default)
|
).flowOn(Dispatchers.Default)
|
||||||
|
|
||||||
private fun refreshUiStates(
|
private fun refreshUiStates(
|
||||||
@@ -164,32 +177,12 @@ object NetworkCellularGroupProvider : SettingsPageProvider {
|
|||||||
|
|
||||||
Log.d(name, "defaultDataSubId: $defaultDataSubId, nonDds: $nonDds")
|
Log.d(name, "defaultDataSubId: $defaultDataSubId, nonDds: $nonDds")
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
fun PageImpl(
|
open fun OtherSection(){
|
||||||
selectableSubscriptionInfoListFlow: StateFlow<List<SubscriptionInfo>>,
|
// Do nothing
|
||||||
defaultVoiceSubId: MutableIntState,
|
}
|
||||||
defaultSmsSubId: MutableIntState,
|
companion object {
|
||||||
defaultDataSubId: MutableIntState,
|
const val fileName = "NetworkCellularGroupProvider"
|
||||||
nonDds: MutableIntState,
|
|
||||||
) {
|
|
||||||
val selectableSubscriptionInfoList by selectableSubscriptionInfoListFlow
|
|
||||||
.collectAsStateWithLifecycle(initialValue = emptyList())
|
|
||||||
|
|
||||||
val stringSims = stringResource(R.string.provider_network_settings_title)
|
|
||||||
RegularScaffold(title = stringSims) {
|
|
||||||
SimsSection(selectableSubscriptionInfoList)
|
|
||||||
MobileDataSectionImpl(defaultDataSubId,
|
|
||||||
nonDds,
|
|
||||||
)
|
|
||||||
|
|
||||||
PrimarySimSectionImpl(
|
|
||||||
selectableSubscriptionInfoListFlow,
|
|
||||||
defaultVoiceSubId,
|
|
||||||
defaultSmsSubId,
|
|
||||||
defaultDataSubId,
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -417,9 +410,9 @@ suspend fun setMobileData(
|
|||||||
enabled: Boolean,
|
enabled: Boolean,
|
||||||
): Unit =
|
): Unit =
|
||||||
withContext(Dispatchers.Default) {
|
withContext(Dispatchers.Default) {
|
||||||
Log.d(NetworkCellularGroupProvider.name, "setMobileData: $enabled")
|
Log.d(NetworkCellularGroupProvider.fileName, "setMobileData: $enabled")
|
||||||
if (enabled) {
|
if (enabled) {
|
||||||
Log.d(NetworkCellularGroupProvider.name, "setDefaultData: [$subId]")
|
Log.d(NetworkCellularGroupProvider.fileName, "setDefaultData: [$subId]")
|
||||||
subscriptionManager?.setDefaultDataSubId(subId)
|
subscriptionManager?.setDefaultDataSubId(subId)
|
||||||
}
|
}
|
||||||
TelephonyRepository(context)
|
TelephonyRepository(context)
|
||||||
|
Reference in New Issue
Block a user