From 86bb7666ea1eb078581f3645c0028ff38f879ed2 Mon Sep 17 00:00:00 2001 From: Michelle Tang Date: Fri, 13 Feb 2026 17:09:34 -0500 Subject: [PATCH] Fix unpinning all in note to self. --- .../thoughtcrime/securesms/jobs/UnpinMessageJob.kt | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/UnpinMessageJob.kt b/app/src/main/java/org/thoughtcrime/securesms/jobs/UnpinMessageJob.kt index c2d4b5f1e3..14b3c15a25 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/UnpinMessageJob.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/UnpinMessageJob.kt @@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.jobs import org.signal.core.util.logging.Log import org.thoughtcrime.securesms.database.SignalDatabase import org.thoughtcrime.securesms.database.model.MessageId +import org.thoughtcrime.securesms.dependencies.AppDependencies import org.thoughtcrime.securesms.groups.GroupAccessControl import org.thoughtcrime.securesms.groups.GroupId import org.thoughtcrime.securesms.jobmanager.Job @@ -114,7 +115,7 @@ class UnpinMessageJob( val targetSentTimestamp = message.dateSent - val recipients = Recipient.resolvedList(recipientIds.filter { it != Recipient.self().id.toLong() }.map { RecipientId.from(it) }) + val recipients = Recipient.resolvedList(recipientIds.map { RecipientId.from(it) }) val registered = RecipientUtil.getEligibleForSending(recipients) val unregistered = recipients - registered.toSet() val completions: List = deliver(conversationRecipient, registered, message.threadId, targetAuthor, targetSentTimestamp) @@ -148,11 +149,14 @@ class UnpinMessageJob( val dataMessage = dataMessageBuilder.build() + val nonSelfRecipients = destinations.filterNot { it.isSelf } + val includeSelf = destinations.size != nonSelfRecipients.size + val results = GroupSendUtil.sendResendableDataMessage( context, conversationRecipient.groupId.map { obj: GroupId -> obj.requireV2() }.orElse(null), null, - destinations, + nonSelfRecipients, false, ContentHint.RESENDABLE, MessageId(messageId), @@ -163,6 +167,10 @@ class UnpinMessageJob( null ) + if (includeSelf) { + results.add(AppDependencies.signalServiceMessageSender.sendSyncMessage(dataMessage)) + } + val result = GroupSendJobHelper.getCompletedSends(destinations, results) for (unregistered in result.unregistered) {