diff options
author | steckbrief <steckbrief@chefmail.de> | 2018-05-05 20:28:04 +0200 |
---|---|---|
committer | steckbrief <steckbrief@chefmail.de> | 2018-05-06 13:46:22 +0200 |
commit | 132b27adeef3ab4d305facda7dd035015b00766f (patch) | |
tree | ce90c05d96d747ea1f6cf80129462119a1291dc1 /src/main/java/de/thedevstack/conversationsplus/ui/dialogs | |
parent | 853f50e43f68599774469dd12240f35800144991 (diff) |
introduces new message state model
Diffstat (limited to 'src/main/java/de/thedevstack/conversationsplus/ui/dialogs')
-rw-r--r-- | src/main/java/de/thedevstack/conversationsplus/ui/dialogs/MessageDetailsDialog.java | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/src/main/java/de/thedevstack/conversationsplus/ui/dialogs/MessageDetailsDialog.java b/src/main/java/de/thedevstack/conversationsplus/ui/dialogs/MessageDetailsDialog.java index b43384a4..60431d54 100644 --- a/src/main/java/de/thedevstack/conversationsplus/ui/dialogs/MessageDetailsDialog.java +++ b/src/main/java/de/thedevstack/conversationsplus/ui/dialogs/MessageDetailsDialog.java @@ -13,6 +13,10 @@ import de.thedevstack.conversationsplus.R; import de.thedevstack.conversationsplus.entities.Conversation; import de.thedevstack.conversationsplus.entities.FileParams; import de.thedevstack.conversationsplus.entities.Message; +import de.thedevstack.conversationsplus.enums.FileStatus; +import de.thedevstack.conversationsplus.enums.MessageDirection; +import de.thedevstack.conversationsplus.enums.MessageStatus; +import de.thedevstack.conversationsplus.utils.MessageUtil; import de.thedevstack.conversationsplus.utils.UIHelper; import de.thedevstack.conversationsplus.utils.ui.TextViewUtil; @@ -78,26 +82,30 @@ public class MessageDetailsDialog extends AbstractAlertDialog { protected void displayMessageStatusInfo(View view, Message message) { TextView msgStatusTextView = (TextView) view.findViewById(R.id.dlgMsgDetMsgStatus); int msgStatusResId; - switch (message.getStatus()) { - case Message.STATUS_WAITING: + switch (message.getMessageStatus()) { + case WAITING: msgStatusResId = R.string.dlg_msg_details_msg_status_waiting; break; - case Message.STATUS_UNSEND: - msgStatusResId = R.string.dlg_msg_details_msg_status_unsend; + case TRANSMITTING: + if (MessageUtil.isOutgoingMessage(message)) { + msgStatusResId = R.string.dlg_msg_details_msg_status_unsend; + } else if (FileStatus.NEEDS_UPLOAD == message.getFileParams().getFileStatus()) { // FIXME: Remove when Jingle is migrated + msgStatusResId = R.string.dlg_msg_details_msg_status_offered; + } else { + msgStatusResId = R.string.dlg_msg_details_msg_status_receiving; + } break; - case Message.STATUS_OFFERED: - msgStatusResId = R.string.dlg_msg_details_msg_status_offered; - break; - case Message.STATUS_SEND_FAILED: + case FAILED: msgStatusResId = R.string.dlg_msg_details_msg_status_failed; msgStatusTextView.setTextColor(ConversationsPlusColors.error()); break; - case Message.STATUS_RECEIVED: - msgStatusResId = R.string.dlg_msg_details_msg_status_received; + case TRANSMITTED: + if (MessageUtil.isIncomingMessage(message)) { + msgStatusResId = R.string.dlg_msg_details_msg_status_received; + } else { + msgStatusResId = R.string.dlg_msg_details_msg_status_sent; + } break; - case Message.STATUS_SEND: - case Message.STATUS_SEND_DISPLAYED: - case Message.STATUS_SEND_RECEIVED: default: msgStatusResId = R.string.dlg_msg_details_msg_status_sent; } @@ -154,7 +162,7 @@ public class MessageDetailsDialog extends AbstractAlertDialog { // Get own nick for MUC me = conversation.getMucOptions().getActualNick(); } - if (Message.STATUS_RECEIVED == message.getStatus()) { + if (MessageUtil.isIncomingMessage(message)) { // Sender was chat partner, if the status is for my account received sender.setText(other); // Set receipient to myself in case of normal chat or private message in MUC |