Generate thumbnails for quote attachments.

This commit is contained in:
Greyson Parrelli
2025-08-26 12:54:16 -04:00
parent 71dd1d9d8b
commit d4c1c39179
22 changed files with 276 additions and 148 deletions

View File

@@ -309,7 +309,7 @@ public class InputPanel extends ConstraintLayout
quoteView.getAuthor().getId(),
quoteView.getBody().toString(),
false,
quoteView.getAttachments(),
quoteView.getAttachment(),
quoteView.getMentions(),
quoteView.getQuoteType(),
quoteView.getBodyRanges()));

View File

@@ -464,8 +464,13 @@ public class QuoteView extends ConstraintLayout implements RecipientForeverObser
return body;
}
public List<Attachment> getAttachments() {
return attachments.asAttachments();
public @Nullable Attachment getAttachment() {
List<Attachment> converted = attachments.asAttachments();
if (converted.size() > 0) {
return converted.get(0);
} else {
return null;
}
}
public @NonNull QuoteModel.Type getQuoteType() {

View File

@@ -185,7 +185,7 @@ class InternalConversationSettingsFragment : ComposeFragment(), InternalConversa
val id = SignalDatabase.messages.insertMessageOutbox(
message = OutgoingMessage(threadRecipient = recipient, sentTimeMillis = time, body = "Outgoing: $i"),
threadId = targetThread
)
).messageId
SignalDatabase.messages.markAsSent(id, true)
} else {
SignalDatabase.messages.insertMessageInbox(
@@ -215,7 +215,7 @@ class InternalConversationSettingsFragment : ComposeFragment(), InternalConversa
val id = SignalDatabase.messages.insertMessageOutbox(
message = OutgoingMessage(threadRecipient = recipient, sentTimeMillis = time, body = "Outgoing: $i", attachments = listOf(attachment)),
threadId = targetThread
)
).messageId
SignalDatabase.messages.markAsSent(id, true)
SignalDatabase.attachments.getAttachmentsForMessage(id).forEach {
SignalDatabase.attachments.debugMakeValidForArchive(it.attachmentId)
@@ -249,7 +249,7 @@ class InternalConversationSettingsFragment : ComposeFragment(), InternalConversa
splitThreadId,
false,
null
)
).messageId
SignalDatabase.messages.markAsSent(messageId, true)
SignalDatabase.threads.update(splitThreadId, true)