From 46681868d35f232e50bc574b1193017dc6ad7c62 Mon Sep 17 00:00:00 2001 From: Michelle Tang Date: Tue, 24 Feb 2026 18:21:51 -0500 Subject: [PATCH] Put new deleting UI behind remote config. --- .../securesms/conversation/ConversationItem.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java index 681aef1e2c..53cdc5d7e4 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversation/ConversationItem.java @@ -148,6 +148,7 @@ import org.thoughtcrime.securesms.util.MessageRecordUtil; import org.thoughtcrime.securesms.util.PlaceholderURLSpan; import org.thoughtcrime.securesms.util.Projection; import org.thoughtcrime.securesms.util.ProjectionList; +import org.thoughtcrime.securesms.util.RemoteConfig; import org.thoughtcrime.securesms.util.SearchUtil; import org.signal.core.ui.util.ThemeUtil; import org.thoughtcrime.securesms.util.UrlClickHandler; @@ -1094,10 +1095,22 @@ public final class ConversationItem extends RelativeLayout implements BindableCo bodyText.setOverflowText(null); bodyText.setMaxLength(-1); - if (conversationMessage.getDeletedByRecipient() != null) { + if (RemoteConfig.receiveAdminDelete() && conversationMessage.getDeletedByRecipient() != null) { bodyText.setText(getDeletedMessageText(conversationMessage)); bodyText.setVisibility(View.VISIBLE); bodyText.setOverflowText(null); + } else if (messageRecord.isRemoteDelete()) { + String deletedMessage = context.getString(messageRecord.isOutgoing() ? R.string.ConversationItem_you_deleted_this_message : R.string.ConversationItem_this_message_was_deleted); + SpannableString italics = new SpannableString(deletedMessage); + italics.setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, deletedMessage.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); + italics.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.signal_text_primary)), + 0, + deletedMessage.length(), + Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); + + bodyText.setText(italics); + bodyText.setVisibility(View.VISIBLE); + bodyText.setOverflowText(null); } else if (isCaptionlessMms(messageRecord) || isStoryReaction(messageRecord) || isGiftMessage(messageRecord) || messageRecord.isPaymentNotification() || messageRecord.isPaymentTombstone()) { bodyText.setText(null); bodyText.setOverflowText(null);