diff --git a/native/chat/composed-message.react.js b/native/chat/composed-message.react.js
--- a/native/chat/composed-message.react.js
+++ b/native/chat/composed-message.react.js
@@ -125,7 +125,13 @@
let deliveryIconName;
let deliveryIconColor = `#${item.threadInfo.color}`;
- if (id !== null && id !== undefined) {
+ const notDeliveredP2PMessages =
+ item?.localMessageInfo?.outboundP2PMessageIDs ?? [];
+ if (
+ id !== null &&
+ id !== undefined &&
+ notDeliveredP2PMessages.length === 0
+ ) {
deliveryIconName = 'check-circle';
} else if (sendFailed) {
deliveryIconName = 'x-circle';
@@ -149,6 +155,7 @@
deliveryIconOpacity,
id,
isViewer,
+ item?.localMessageInfo?.outboundP2PMessageIDs,
item.threadInfo.color,
sendFailed,
]);
diff --git a/web/chat/composed-message.react.js b/web/chat/composed-message.react.js
--- a/web/chat/composed-message.react.js
+++ b/web/chat/composed-message.react.js
@@ -116,7 +116,14 @@
if (isViewer) {
let deliveryIconSpan;
let deliveryIconColor = threadColor;
- if (id !== null && id !== undefined) {
+
+ const notDeliveredP2PMessages =
+ item?.localMessageInfo?.outboundP2PMessageIDs ?? [];
+ if (
+ id !== null &&
+ id !== undefined &&
+ notDeliveredP2PMessages.length === 0
+ ) {
deliveryIconSpan = ;
} else if (this.props.sendFailed) {
deliveryIconSpan = ;