diff --git a/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchData.kt b/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchData.kt index f7ba55ba2..7651806f2 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchData.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchData.kt @@ -16,7 +16,7 @@ sealed class ContactSearchData(val contactSearchKey: ContactSearchKey) { */ data class Story( val recipient: Recipient, - val viewerCount: Int, + val count: Int, val privacyMode: DistributionListPrivacyMode ) : ContactSearchData(ContactSearchKey.RecipientSearchKey.Story(recipient.id)) diff --git a/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchItems.kt b/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchItems.kt index 4608cb2dc..678cb68f6 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchItems.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/contacts/paged/ContactSearchItems.kt @@ -130,7 +130,7 @@ object ContactSearchItems { val count = if (model.story.recipient.isGroup) { model.story.recipient.participantIds.size } else { - model.story.viewerCount + model.story.count } if (model.story.recipient.isMyStory && !model.hasBeenNotified) { @@ -138,7 +138,13 @@ object ContactSearchItems { } else { number.text = when { model.story.recipient.isGroup -> context.resources.getQuantityString(R.plurals.ContactSearchItems__group_story_d_viewers, count, count) - model.story.recipient.isMyStory -> context.resources.getQuantityString(R.plurals.ContactSearchItems__my_story_s_dot_d_viewers, count, presentPrivacyMode(model.story.privacyMode), count) + model.story.recipient.isMyStory -> { + if (model.story.privacyMode == DistributionListPrivacyMode.ALL_EXCEPT) { + context.resources.getQuantityString(R.plurals.ContactSearchItems__my_story_s_dot_d_excluded, count, presentPrivacyMode(DistributionListPrivacyMode.ALL), count) + } else { + context.resources.getQuantityString(R.plurals.ContactSearchItems__my_story_s_dot_d_viewers, count, presentPrivacyMode(model.story.privacyMode), count) + } + } else -> context.resources.getQuantityString(R.plurals.ContactSearchItems__custom_story_d_viewers, count, count) } } diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/DistributionListDatabase.kt b/app/src/main/java/org/thoughtcrime/securesms/database/DistributionListDatabase.kt index 757b00884..461456f28 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/DistributionListDatabase.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/DistributionListDatabase.kt @@ -451,13 +451,12 @@ class DistributionListDatabase constructor(context: Context?, databaseHelper: Si val memberCount = when (privacyMode) { DistributionListPrivacyMode.ALL -> totalContactCount - DistributionListPrivacyMode.ALL_EXCEPT -> totalContactCount - rawMemberCount + DistributionListPrivacyMode.ALL_EXCEPT -> rawMemberCount DistributionListPrivacyMode.ONLY_WITH -> rawMemberCount } return DistributionListPrivacyData( privacyMode = privacyMode, - rawMemberCount = rawMemberCount, memberCount = memberCount ) } diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListPrivacyData.kt b/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListPrivacyData.kt index a1c4848c7..885dd2a2e 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListPrivacyData.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/model/DistributionListPrivacyData.kt @@ -5,6 +5,5 @@ package org.thoughtcrime.securesms.database.model */ data class DistributionListPrivacyData( val privacyMode: DistributionListPrivacyMode, - val rawMemberCount: Int, val memberCount: Int ) diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/settings/my/MyStorySettingsRepository.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/settings/my/MyStorySettingsRepository.kt index 714f79496..4aaf3bdaf 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/settings/my/MyStorySettingsRepository.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/settings/my/MyStorySettingsRepository.kt @@ -66,7 +66,7 @@ class MyStorySettingsRepository { return MyStoryPrivacyState( privacyMode = privacyData.privacyMode, - connectionCount = if (privacyData.privacyMode == DistributionListPrivacyMode.ALL_EXCEPT) privacyData.rawMemberCount else privacyData.memberCount + connectionCount = privacyData.memberCount ) } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ed6a59d8c..8b667b677 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -5237,6 +5237,11 @@ %1$s · %2$d viewer %1$s · %2$d viewers + + + %1$s · %2$d excluded + %1$s · %2$d excluded + Tap to choose your viewers