Skip to content

Commit 52005cf

Browse files
Fix bug when replying with a voice note.
1 parent f5effa5 commit 52005cf

File tree

4 files changed

+25
-3
lines changed

4 files changed

+25
-3
lines changed

app/src/main/java/org/thoughtcrime/securesms/jobs/PushSendJob.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -256,7 +256,7 @@ protected static Set<String> enqueueCompressingAndUploadAttachmentsChains(@NonNu
256256
.map(Contact.Avatar::getAttachment).withoutNulls()
257257
.toList());
258258

259-
return new HashSet<>(Stream.of(attachments).map(a -> {
259+
HashSet<String> jobs = new HashSet<>(Stream.of(attachments).map(a -> {
260260
final AttachmentId attachmentId = ((DatabaseAttachment) a).attachmentId;
261261
Log.d(TAG, "Enqueueing job chain to upload " + attachmentId);
262262
AttachmentUploadJob attachmentUploadJob = new AttachmentUploadJob(attachmentId);
@@ -268,6 +268,17 @@ protected static Set<String> enqueueCompressingAndUploadAttachmentsChains(@NonNu
268268
return attachmentUploadJob.getId();
269269
})
270270
.toList());
271+
272+
if (message.getOutgoingQuote() != null && message.getOutgoingQuote().getAttachment() != null) {
273+
AttachmentId attachmentId = ((DatabaseAttachment) message.getOutgoingQuote().getAttachment()).attachmentId;
274+
AttachmentUploadJob quoteUploadJob = new AttachmentUploadJob(attachmentId);
275+
276+
jobManager.add(quoteUploadJob);
277+
278+
jobs.add(quoteUploadJob.getId());
279+
}
280+
281+
return jobs;
271282
}
272283

273284
protected @NonNull List<SignalServiceAttachment> getAttachmentPointersFor(List<Attachment> attachments) {

app/src/main/java/org/thoughtcrime/securesms/messagedetails/InternalMessageDetailsFragment.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import androidx.compose.ui.tooling.preview.Preview
3232
import androidx.compose.ui.unit.dp
3333
import androidx.core.os.bundleOf
3434
import androidx.fragment.app.FragmentActivity
35+
import org.signal.core.ui.compose.Dividers
3536
import org.thoughtcrime.securesms.compose.ComposeFullScreenDialogFragment
3637
import org.thoughtcrime.securesms.database.model.MessageRecord
3738
import org.thoughtcrime.securesms.messagedetails.InternalMessageDetailsViewModel.AttachmentInfo
@@ -143,8 +144,12 @@ private fun Content(state: ViewState) {
143144
.fillMaxWidth()
144145
)
145146
} else {
146-
state.attachments.forEach { attachment ->
147+
state.attachments.forEachIndexed { i, attachment ->
147148
AttachmentBlock(attachment)
149+
150+
if (i != state.attachments.lastIndex) {
151+
Dividers.Default()
152+
}
148153
}
149154
}
150155
}
@@ -199,6 +204,10 @@ private fun AttachmentBlock(attachment: AttachmentInfo) {
199204
name = "Content Type",
200205
value = attachment.contentType ?: "null"
201206
)
207+
ClickToCopyRow(
208+
name = "Quote Target Content Type",
209+
value = attachment.quoteTargetContentType ?: "Not a quote"
210+
)
202211
ClickToCopyRow(
203212
name = "Start Hash",
204213
value = attachment.hashStart ?: "null"

app/src/main/java/org/thoughtcrime/securesms/messagedetails/InternalMessageDetailsViewModel.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ class InternalMessageDetailsViewModel(val messageId: Long) : ViewModel() {
3939
AttachmentInfo(
4040
id = attachment.attachmentId.id,
4141
contentType = attachment.contentType,
42+
quoteTargetContentType = attachment.quoteTargetContentType,
4243
size = attachment.size,
4344
fileName = attachment.fileName,
4445
hashStart = info?.hashStart,
@@ -63,6 +64,7 @@ class InternalMessageDetailsViewModel(val messageId: Long) : ViewModel() {
6364
data class AttachmentInfo(
6465
val id: Long,
6566
val contentType: String?,
67+
val quoteTargetContentType: String?,
6668
val size: Long,
6769
val fileName: String?,
6870
val hashStart: String?,

app/src/main/java/org/thoughtcrime/securesms/sms/MessageSender.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -562,7 +562,7 @@ private static void sendMessageInternal(Context context,
562562
{
563563
Set<String> finalUploadJobIds = new HashSet<>(uploadJobIds);
564564

565-
if (quoteAttachmentId != null && SignalDatabase.attachments().hasData(quoteAttachmentId)) {
565+
if (quoteAttachmentId != null && SignalDatabase.attachments().hasData(quoteAttachmentId) && uploadJobIds.size() > 0) {
566566
Job uploadJob = new AttachmentUploadJob(quoteAttachmentId);
567567
AppDependencies.getJobManager().add(uploadJob);
568568
finalUploadJobIds.add(uploadJob.getId());

0 commit comments

Comments
 (0)