Legacy expiration type ui default tweaks

This commit is contained in:
charles
2022-12-15 10:05:07 +11:00
parent 23c881f3ce
commit 48a99a85c3
3 changed files with 16 additions and 7 deletions

View File

@@ -34,8 +34,8 @@ class ExpirationSettingsViewModel(
private val _recipient = MutableStateFlow<Recipient?>(null)
val recipient: StateFlow<Recipient?> = _recipient
private val _selectedExpirationType = MutableStateFlow<Int?>(null)
val selectedExpirationType: StateFlow<Int?> = _selectedExpirationType
private val _selectedExpirationType = MutableStateFlow(-1)
val selectedExpirationType: StateFlow<Int> = _selectedExpirationType
private val _selectedExpirationTimer = MutableStateFlow(afterSendOptions.firstOrNull())
val selectedExpirationTimer: StateFlow<RadioOption?> = _selectedExpirationTimer
@@ -52,7 +52,16 @@ class ExpirationSettingsViewModel(
if (ExpirationConfiguration.isNewConfigEnabled && (recipient?.isLocalNumber == true || recipient?.isClosedGroupRecipient == true)) {
_selectedExpirationType.value = ExpirationType.DELETE_AFTER_SEND.number
} else {
_selectedExpirationType.value = expirationConfig?.expirationTypeValue
_selectedExpirationType.value = expirationConfig?.expirationTypeValue ?: -1
}
_selectedExpirationType.value = if (ExpirationConfiguration.isNewConfigEnabled) {
if (recipient?.isLocalNumber == true || recipient?.isClosedGroupRecipient == true) {
ExpirationType.DELETE_AFTER_SEND.number
} else {
expirationConfig?.expirationTypeValue ?: -1
}
} else {
expirationConfig?.expirationTypeValue?.let { 0 /* Legacy */ } ?: -1
}
_selectedExpirationTimer.value = when(expirationConfig?.expirationType) {
ExpirationType.DELETE_AFTER_SEND -> afterSendOptions.find { it.value.toIntOrNull() == expirationConfig?.durationSeconds }
@@ -76,7 +85,7 @@ class ExpirationSettingsViewModel(
}
fun onExpirationTypeSelected(option: RadioOption) {
_selectedExpirationType.value = option.value.toIntOrNull()
_selectedExpirationType.value = option.value.toIntOrNull() ?: -1
}
fun onExpirationTimerSelected(option: RadioOption) {