diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/model/Account.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/model/Account.kt index 74bc5c4f7c..4d6726ff43 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/model/Account.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/model/Account.kt @@ -3125,6 +3125,8 @@ class Account( PeopleListEvent.removeWord( earlierVersion = blockList, word = word, + // It is true here, since PeopleListEvent.removeTag(..) defaulted to private tags. + isPrivate = true, signer = signer, ) { Amethyst.instance.client.send(it) @@ -3178,6 +3180,8 @@ class Account( PeopleListEvent.removeUser( earlierVersion = blockList, pubKeyHex = pubkeyHex, + // Reason: refer to showWord(..) above. + isPrivate = true, signer = signer, ) { Amethyst.instance.client.send(it) diff --git a/quartz/src/main/java/com/vitorpamplona/quartz/nip51Lists/PeopleListEvent.kt b/quartz/src/main/java/com/vitorpamplona/quartz/nip51Lists/PeopleListEvent.kt index 9b71dcd292..c8feeb7f7e 100644 --- a/quartz/src/main/java/com/vitorpamplona/quartz/nip51Lists/PeopleListEvent.kt +++ b/quartz/src/main/java/com/vitorpamplona/quartz/nip51Lists/PeopleListEvent.kt @@ -270,46 +270,62 @@ class PeopleListEvent( fun removeWord( earlierVersion: PeopleListEvent, word: String, + isPrivate: Boolean, signer: NostrSigner, createdAt: Long = TimeUtils.now(), onReady: (PeopleListEvent) -> Unit, - ) = removeTag(earlierVersion, "word", word, signer, createdAt, onReady) + ) = removeTag(earlierVersion, "word", word, isPrivate, signer, createdAt, onReady) fun removeUser( earlierVersion: PeopleListEvent, pubKeyHex: String, + isPrivate: Boolean, signer: NostrSigner, createdAt: Long = TimeUtils.now(), onReady: (PeopleListEvent) -> Unit, - ) = removeTag(earlierVersion, "p", pubKeyHex, signer, createdAt, onReady) + ) = removeTag(earlierVersion, "p", pubKeyHex, isPrivate, signer, createdAt, onReady) fun removeTag( earlierVersion: PeopleListEvent, key: String, tag: String, + isPrivate: Boolean, signer: NostrSigner, createdAt: Long = TimeUtils.now(), onReady: (PeopleListEvent) -> Unit, ) { - earlierVersion.privateTagsOrEmpty(signer) { privateTags -> - encryptTags( - privateTags = - privateTags - .filter { it.size > 1 && !(it[0] == key && it[1] == tag) } - .toTypedArray(), - signer = signer, - ) { encryptedTags -> - create( - content = encryptedTags, - tags = - earlierVersion.tags + if (isPrivate) { + earlierVersion.privateTagsOrEmpty(signer) { privateTags -> + encryptTags( + privateTags = + privateTags .filter { it.size > 1 && !(it[0] == key && it[1] == tag) } .toTypedArray(), signer = signer, - createdAt = createdAt, - onReady = onReady, - ) + ) { encryptedTags -> + create( + content = encryptedTags, + tags = + earlierVersion.tags + .filter { it.size > 1 && !(it[0] == key && it[1] == tag) } + .toTypedArray(), + signer = signer, + createdAt = createdAt, + onReady = onReady, + ) + } } + } else { + create( + content = earlierVersion.content, + tags = + earlierVersion.tags + .filter { it.size > 1 && !(it[0] == key && it[1] == tag) } + .toTypedArray(), + signer, + createdAt, + onReady, + ) } }