mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 09:20:19 +01:00
Move to defined from_recipient_id and to_recipient_id columns on message table.
This commit is contained in:
committed by
Cody Henthorne
parent
d079f85eca
commit
279ad7945e
@@ -38,7 +38,7 @@ public final class MessageDetails {
|
||||
viewed = new TreeSet<>(RECIPIENT_COMPARATOR);
|
||||
skipped = new TreeSet<>(RECIPIENT_COMPARATOR);
|
||||
|
||||
if (conversationMessage.getMessageRecord().getRecipient().isSelf()) {
|
||||
if (conversationMessage.getMessageRecord().getToRecipient().isSelf()) {
|
||||
read.addAll(recipients);
|
||||
} else if (conversationMessage.getMessageRecord().isOutgoing()) {
|
||||
for (RecipientDeliveryStatus status : recipients) {
|
||||
|
||||
@@ -76,19 +76,19 @@ public final class MessageDetailsRepository {
|
||||
private @NonNull MessageDetails getRecipientDeliveryStatusesInternal(@NonNull MessageRecord messageRecord) {
|
||||
List<RecipientDeliveryStatus> recipients = new LinkedList<>();
|
||||
|
||||
if (!messageRecord.getRecipient().isGroup() && !messageRecord.getRecipient().isDistributionList()) {
|
||||
if (!messageRecord.getToRecipient().isGroup() && !messageRecord.getToRecipient().isDistributionList()) {
|
||||
recipients.add(new RecipientDeliveryStatus(messageRecord,
|
||||
messageRecord.getRecipient(),
|
||||
messageRecord.getToRecipient(),
|
||||
getStatusFor(messageRecord),
|
||||
messageRecord.isUnidentified(),
|
||||
messageRecord.getReceiptTimestamp(),
|
||||
getNetworkFailure(messageRecord, messageRecord.getRecipient()),
|
||||
getKeyMismatchFailure(messageRecord, messageRecord.getRecipient())));
|
||||
getNetworkFailure(messageRecord, messageRecord.getToRecipient()),
|
||||
getKeyMismatchFailure(messageRecord, messageRecord.getToRecipient())));
|
||||
} else {
|
||||
List<GroupReceiptTable.GroupReceiptInfo> receiptInfoList = SignalDatabase.groupReceipts().getGroupReceiptInfo(messageRecord.getId());
|
||||
|
||||
if (receiptInfoList.isEmpty() && messageRecord.getRecipient().isGroup()) {
|
||||
List<Recipient> group = SignalDatabase.groups().getGroupMembers(messageRecord.getRecipient().requireGroupId(), GroupTable.MemberSet.FULL_MEMBERS_EXCLUDING_SELF);
|
||||
if (receiptInfoList.isEmpty() && messageRecord.getToRecipient().isGroup()) {
|
||||
List<Recipient> group = SignalDatabase.groups().getGroupMembers(messageRecord.getToRecipient().requireGroupId(), GroupTable.MemberSet.FULL_MEMBERS_EXCLUDING_SELF);
|
||||
|
||||
for (Recipient recipient : group) {
|
||||
recipients.add(new RecipientDeliveryStatus(messageRecord,
|
||||
@@ -99,8 +99,8 @@ public final class MessageDetailsRepository {
|
||||
getNetworkFailure(messageRecord, recipient),
|
||||
getKeyMismatchFailure(messageRecord, recipient)));
|
||||
}
|
||||
} else if (receiptInfoList.isEmpty() && messageRecord.getRecipient().isDistributionList()) {
|
||||
DistributionId distributionId = SignalDatabase.distributionLists().getDistributionId(messageRecord.getRecipient().requireDistributionListId());
|
||||
} else if (receiptInfoList.isEmpty() && messageRecord.getToRecipient().isDistributionList()) {
|
||||
DistributionId distributionId = SignalDatabase.distributionLists().getDistributionId(messageRecord.getToRecipient().requireDistributionListId());
|
||||
Set<RecipientId> recipientIds = SignalDatabase.storySends().getRecipientsForDistributionId(messageRecord.getId(), Objects.requireNonNull(distributionId));
|
||||
List<Recipient> resolved = Recipient.resolvedList(recipientIds);
|
||||
|
||||
|
||||
@@ -104,7 +104,7 @@ final class MessageHeaderViewHolder extends RecyclerView.ViewHolder implements G
|
||||
glideRequests,
|
||||
Locale.getDefault(),
|
||||
new HashSet<>(),
|
||||
conversationMessage.getMessageRecord().getRecipient(),
|
||||
conversationMessage.getMessageRecord().getToRecipient(),
|
||||
null,
|
||||
false,
|
||||
false,
|
||||
|
||||
@@ -51,7 +51,7 @@ final class RecipientViewHolder extends RecyclerView.ViewHolder {
|
||||
conflictButton.setVisibility(View.VISIBLE);
|
||||
error.setText(itemView.getContext().getString(R.string.message_details_recipient__new_safety_number));
|
||||
conflictButton.setOnClickListener(unused -> callbacks.onErrorClicked(data.getMessageRecord()));
|
||||
} else if ((data.getNetworkFailure() != null && !data.getMessageRecord().isPending()) || (!data.getMessageRecord().getRecipient().isPushGroup() && data.getMessageRecord().isFailed())) {
|
||||
} else if ((data.getNetworkFailure() != null && !data.getMessageRecord().isPending()) || (!data.getMessageRecord().getToRecipient().isPushGroup() && data.getMessageRecord().isFailed())) {
|
||||
timestamp.setVisibility(View.GONE);
|
||||
error.setVisibility(View.VISIBLE);
|
||||
conflictButton.setVisibility(View.GONE);
|
||||
|
||||
Reference in New Issue
Block a user