diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/expiration/ExpirationSettingsViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/expiration/ExpirationSettingsViewModel.kt index cfb1b4fe38..1346b60950 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/expiration/ExpirationSettingsViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/expiration/ExpirationSettingsViewModel.kt @@ -77,7 +77,7 @@ class ExpirationSettingsViewModel( expirationConfig?.expirationTypeValue?.let { 0 /* Legacy */ } ?: -1 } _selectedExpirationTimer.value = when(expirationConfig?.expirationType) { - ExpirationType.DELETE_AFTER_SEND -> afterSendOptions.find { it.value.toIntOrNull() == expirationConfig?.durationSeconds } + null, ExpirationType.DELETE_AFTER_SEND -> afterSendOptions.find { it.value.toIntOrNull() == expirationConfig?.durationSeconds } ExpirationType.DELETE_AFTER_READ -> afterReadOptions.find { it.value.toIntOrNull() == expirationConfig?.durationSeconds } else -> afterSendOptions.firstOrNull() } @@ -107,7 +107,11 @@ class ExpirationSettingsViewModel( } fun onSetClick() = viewModelScope.launch { - val expiryType = _selectedExpirationType.value + var typeValue = _selectedExpirationType.value + if (typeValue == 0) { + typeValue = ExpirationType.DELETE_AFTER_READ_VALUE + } + val expiryType = typeValue val expirationTimer = _selectedExpirationTimer.value?.value?.toIntOrNull() ?: 0 val address = recipient.value?.address if (address == null || (expirationConfig?.expirationTypeValue == expiryType && expirationConfig?.durationSeconds == expirationTimer)) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt index aaf0606095..e735ea9c74 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/v2/ConversationActivityV2.kt @@ -363,7 +363,7 @@ class ConversationActivityV2 : PassphraseRequiredActionBarActivity(), InputBarDe setUpRecipientObserver() getLatestOpenGroupInfoIfNeeded() setUpBlockedBanner() - setUpOutdatedClientBanner(); + setUpOutdatedClientBanner() binding!!.searchBottomBar.setEventListener(this) setUpSearchResultObserver() scrollToFirstUnreadMessageIfNeeded() diff --git a/libsession/src/main/java/org/session/libsession/messaging/messages/ExpirationConfiguration.kt b/libsession/src/main/java/org/session/libsession/messaging/messages/ExpirationConfiguration.kt index 809d77aac1..8254b64c64 100644 --- a/libsession/src/main/java/org/session/libsession/messaging/messages/ExpirationConfiguration.kt +++ b/libsession/src/main/java/org/session/libsession/messaging/messages/ExpirationConfiguration.kt @@ -8,10 +8,10 @@ class ExpirationConfiguration( val expirationTypeValue: Int = -1, val updatedTimestampMs: Long = 0 ) { - val isEnabled = durationSeconds > 0 val expirationType: ExpirationType? = ExpirationType.valueOf(expirationTypeValue) + val isEnabled = durationSeconds > 0 && expirationType != null companion object { - val isNewConfigEnabled = true /* TODO: System.currentTimeMillis() > 1_676_851_200_000 // 13/02/2023 */ + val isNewConfigEnabled = false /* TODO: System.currentTimeMillis() > 1_676_851_200_000 // 13/02/2023 */ } } \ No newline at end of file diff --git a/libsession/src/main/java/org/session/libsession/messaging/messages/Message.kt b/libsession/src/main/java/org/session/libsession/messaging/messages/Message.kt index 7f82f963c0..f9e3b38cae 100644 --- a/libsession/src/main/java/org/session/libsession/messaging/messages/Message.kt +++ b/libsession/src/main/java/org/session/libsession/messaging/messages/Message.kt @@ -45,9 +45,9 @@ abstract class Message { expirationTimer = 0 return } - expirationTimer = config.durationSeconds - lastDisappearingMessageChangeTimestamp = config.updatedTimestampMs if (config.isEnabled) { + expirationTimer = config.durationSeconds + lastDisappearingMessageChangeTimestamp = config.updatedTimestampMs expirationType = config.expirationType } }