aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java')
-rw-r--r--src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java b/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
index 3534ccd2..344e25a2 100644
--- a/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
+++ b/src/main/java/de/thedevstack/conversationsplus/persistance/observers/FileDeletionObserver.java
@@ -6,6 +6,8 @@ import de.thedevstack.conversationsplus.entities.Conversation;
import de.thedevstack.conversationsplus.entities.Message;
import de.thedevstack.conversationsplus.entities.Transferable;
import de.thedevstack.conversationsplus.entities.TransferablePlaceholder;
+import de.thedevstack.conversationsplus.enums.MessageDirection;
+import de.thedevstack.conversationsplus.enums.MessageStatus;
import de.thedevstack.conversationsplus.utils.MessageUtil;
import de.thedevstack.conversationsplus.utils.UiUpdateHelper;
import de.thedevstack.conversationsplus.utils.XmppConnectionServiceAccessor;
@@ -30,11 +32,10 @@ public class FileDeletionObserver extends FileObserver {
for (Conversation conversation : XmppConnectionServiceAccessor.xmppConnectionService.getConversations()) {
Message message = conversation.findMessageWithFileAndUuid(uuid);
if (message != null) {
- message.setTransferable(new TransferablePlaceholder(Transferable.STATUS_DELETED));
- final int s = message.getStatus();
- if (s == Message.STATUS_WAITING || s == Message.STATUS_OFFERED || s == Message.STATUS_UNSEND) {
- MessageUtil.markMessage(message, Message.STATUS_SEND_FAILED);
- } else {
+ MessageUtil.setAndSaveStatusForFileDeleted(message);
+ if (MessageUtil.isIncomingMessage(message)
+ || (MessageUtil.isOutgoingMessage(message)
+ && !(MessageStatus.TRANSMITTING == message.getMessageStatus() || MessageStatus.WAITING == message.getMessageStatus()))) {
UiUpdateHelper.updateConversationUi();
}
return;