mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2025-09-23 18:11:37 +02:00
Fixes the deletion of private messages and messages in tags
This commit is contained in:
@@ -27,6 +27,10 @@ class Channel(val idHex: String) {
|
|||||||
notes[note.idHex] = note
|
notes[note.idHex] = note
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun removeNote(note: Note) {
|
||||||
|
notes.remove(note.idHex)
|
||||||
|
}
|
||||||
|
|
||||||
fun updateChannelInfo(creator: User, channelInfo: ChannelCreateEvent.ChannelData, updatedAt: Long) {
|
fun updateChannelInfo(creator: User, channelInfo: ChannelCreateEvent.ChannelData, updatedAt: Long) {
|
||||||
this.creator = creator
|
this.creator = creator
|
||||||
this.info = channelInfo
|
this.info = channelInfo
|
||||||
|
@@ -353,6 +353,19 @@ object LocalCache {
|
|||||||
masterNote.removeReport(deleteNote)
|
masterNote.removeReport(deleteNote)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
val channel = deleteNote.channel()
|
||||||
|
channel?.removeNote(deleteNote)
|
||||||
|
|
||||||
|
if (deleteNote.event is PrivateDmEvent) {
|
||||||
|
val author = deleteNote.author
|
||||||
|
val recipient = (deleteNote.event as? PrivateDmEvent)?.recipientPubKey()?.let { checkGetOrCreateUser(it) }
|
||||||
|
|
||||||
|
if (recipient != null && author != null) {
|
||||||
|
author.removeMessage(recipient, deleteNote)
|
||||||
|
recipient.removeMessage(author, deleteNote)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
notes.remove(deleteNote.idHex)
|
notes.remove(deleteNote.idHex)
|
||||||
|
|
||||||
deletedAtLeastOne = true
|
deletedAtLeastOne = true
|
||||||
|
@@ -197,6 +197,14 @@ class User(val pubkeyHex: String) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun removeMessage(user: User, msg: Note) {
|
||||||
|
val privateChatroom = getOrCreatePrivateChatroom(user)
|
||||||
|
if (msg in privateChatroom.roomMessages) {
|
||||||
|
privateChatroom.roomMessages = privateChatroom.roomMessages - msg
|
||||||
|
liveSet?.messages?.invalidateData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fun addRelayBeingUsed(relay: Relay, eventTime: Long) {
|
fun addRelayBeingUsed(relay: Relay, eventTime: Long) {
|
||||||
val here = relaysBeingUsed[relay.url]
|
val here = relaysBeingUsed[relay.url]
|
||||||
if (here == null) {
|
if (here == null) {
|
||||||
|
Reference in New Issue
Block a user