mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-04-04 22:23:47 -04:00
Added delete all messages into the AlertDialog.
This commit is contained in:
@@ -53,6 +53,13 @@ class MessagesState(private val ui: UIViewModel) : Logging {
|
||||
messages.value = messagesList
|
||||
}
|
||||
|
||||
private fun removeAllMessages() {
|
||||
debug("Removing all messages")
|
||||
|
||||
messagesList.clear()
|
||||
messages.value = messagesList
|
||||
}
|
||||
|
||||
fun updateStatus(id: Int, status: MessageStatus) {
|
||||
// Super inefficent but this is rare
|
||||
debug("Handling message status change $id: $status")
|
||||
@@ -102,4 +109,16 @@ class MessagesState(private val ui: UIViewModel) : Logging {
|
||||
}
|
||||
removeMessage(packet)
|
||||
}
|
||||
|
||||
fun deleteAllMessages() {
|
||||
val service = ui.meshService
|
||||
if (service != null) {
|
||||
try {
|
||||
service.deleteAllMessages()
|
||||
} catch (ex: RemoteException) {
|
||||
|
||||
}
|
||||
removeAllMessages()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1789,6 +1789,10 @@ class MeshService : Service(), Logging {
|
||||
}
|
||||
}
|
||||
|
||||
override fun deleteAllMessages() {
|
||||
recentDataPackets.clear()
|
||||
}
|
||||
|
||||
override fun send(p: DataPacket) {
|
||||
toRemoteExceptions {
|
||||
// Init from and id
|
||||
|
||||
@@ -173,9 +173,15 @@ class MessagesFragment : ScreenFragment("Messages"), Logging {
|
||||
) { _, _ ->
|
||||
model.messagesState.deleteMessage((messages[position]), position)
|
||||
}
|
||||
deleteMessageDialog.setNegativeButton(R.string.cancel
|
||||
deleteMessageDialog.setNeutralButton(
|
||||
R.string.cancel
|
||||
) { _, _ ->
|
||||
}
|
||||
deleteMessageDialog.setNegativeButton(
|
||||
R.string.delete_all_messages
|
||||
) { _, _ ->
|
||||
model.messagesState.deleteAllMessages()
|
||||
}
|
||||
deleteMessageDialog.create()
|
||||
deleteMessageDialog.show()
|
||||
true
|
||||
|
||||
Reference in New Issue
Block a user