mirror of
https://github.com/oxen-io/session-android.git
synced 2025-05-05 16:30:50 +00:00
Make DisplayRecord take context as argument, so locale is more likely to be correct.
This commit is contained in:
parent
de72eceecf
commit
e0c11998c3
@ -156,7 +156,7 @@ public class ConversationListItem extends RelativeLayout
|
|||||||
this.typingView.stopAnimation();
|
this.typingView.stopAnimation();
|
||||||
|
|
||||||
this.subjectView.setVisibility(VISIBLE);
|
this.subjectView.setVisibility(VISIBLE);
|
||||||
this.subjectView.setText(thread.getDisplayBody());
|
this.subjectView.setText(thread.getDisplayBody(getContext()));
|
||||||
this.subjectView.setTypeface(unreadCount == 0 ? LIGHT_TYPEFACE : BOLD_TYPEFACE);
|
this.subjectView.setTypeface(unreadCount == 0 ? LIGHT_TYPEFACE : BOLD_TYPEFACE);
|
||||||
this.subjectView.setTextColor(unreadCount == 0 ? ThemeUtil.getThemedColor(getContext(), R.attr.conversation_list_item_subject_color)
|
this.subjectView.setTextColor(unreadCount == 0 ? ThemeUtil.getThemedColor(getContext(), R.attr.conversation_list_item_subject_color)
|
||||||
: ThemeUtil.getThemedColor(getContext(), R.attr.conversation_list_item_unread_color));
|
: ThemeUtil.getThemedColor(getContext(), R.attr.conversation_list_item_unread_color));
|
||||||
|
@ -451,7 +451,7 @@ public class ConversationFragment extends Fragment
|
|||||||
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
|
ClipboardManager clipboard = (ClipboardManager) getActivity().getSystemService(Context.CLIPBOARD_SERVICE);
|
||||||
|
|
||||||
for (MessageRecord messageRecord : messageList) {
|
for (MessageRecord messageRecord : messageList) {
|
||||||
String body = messageRecord.getDisplayBody().toString();
|
String body = messageRecord.getDisplayBody(requireContext()).toString();
|
||||||
if (!TextUtils.isEmpty(body)) {
|
if (!TextUtils.isEmpty(body)) {
|
||||||
bodyBuilder.append(body).append('\n');
|
bodyBuilder.append(body).append('\n');
|
||||||
}
|
}
|
||||||
@ -522,7 +522,7 @@ public class ConversationFragment extends Fragment
|
|||||||
private void handleForwardMessage(MessageRecord message) {
|
private void handleForwardMessage(MessageRecord message) {
|
||||||
SimpleTask.run(getLifecycle(), () -> {
|
SimpleTask.run(getLifecycle(), () -> {
|
||||||
Intent composeIntent = new Intent(getActivity(), ShareActivity.class);
|
Intent composeIntent = new Intent(getActivity(), ShareActivity.class);
|
||||||
composeIntent.putExtra(Intent.EXTRA_TEXT, message.getDisplayBody().toString());
|
composeIntent.putExtra(Intent.EXTRA_TEXT, message.getDisplayBody(requireContext()).toString());
|
||||||
|
|
||||||
if (message.isMms()) {
|
if (message.isMms()) {
|
||||||
MmsMessageRecord mediaMessage = (MmsMessageRecord) message;
|
MmsMessageRecord mediaMessage = (MmsMessageRecord) message;
|
||||||
|
@ -387,7 +387,7 @@ public class ConversationItem extends LinearLayout
|
|||||||
}
|
}
|
||||||
|
|
||||||
private boolean isCaptionlessMms(MessageRecord messageRecord) {
|
private boolean isCaptionlessMms(MessageRecord messageRecord) {
|
||||||
return TextUtils.isEmpty(messageRecord.getDisplayBody()) && messageRecord.isMms() && ((MmsMessageRecord) messageRecord).getSlideDeck().getTextSlide() == null;
|
return TextUtils.isEmpty(messageRecord.getDisplayBody(getContext())) && messageRecord.isMms() && ((MmsMessageRecord) messageRecord).getSlideDeck().getTextSlide() == null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean hasAudio(MessageRecord messageRecord) {
|
private boolean hasAudio(MessageRecord messageRecord) {
|
||||||
@ -433,7 +433,7 @@ public class ConversationItem extends LinearLayout
|
|||||||
if (isCaptionlessMms(messageRecord)) {
|
if (isCaptionlessMms(messageRecord)) {
|
||||||
bodyText.setVisibility(View.GONE);
|
bodyText.setVisibility(View.GONE);
|
||||||
} else {
|
} else {
|
||||||
Spannable styledText = linkifyMessageBody(messageRecord.getDisplayBody(), batchSelected.isEmpty());
|
Spannable styledText = linkifyMessageBody(messageRecord.getDisplayBody(getContext()), batchSelected.isEmpty());
|
||||||
styledText = SearchUtil.getHighlightedSpan(locale, () -> new BackgroundColorSpan(Color.YELLOW), styledText, searchQuery);
|
styledText = SearchUtil.getHighlightedSpan(locale, () -> new BackgroundColorSpan(Color.YELLOW), styledText, searchQuery);
|
||||||
styledText = SearchUtil.getHighlightedSpan(locale, () -> new ForegroundColorSpan(Color.BLACK), styledText, searchQuery);
|
styledText = SearchUtil.getHighlightedSpan(locale, () -> new ForegroundColorSpan(Color.BLACK), styledText, searchQuery);
|
||||||
|
|
||||||
@ -558,7 +558,7 @@ public class ConversationItem extends LinearLayout
|
|||||||
mediaThumbnailStub.get().setDownloadClickListener(downloadClickListener);
|
mediaThumbnailStub.get().setDownloadClickListener(downloadClickListener);
|
||||||
mediaThumbnailStub.get().setOnLongClickListener(passthroughClickListener);
|
mediaThumbnailStub.get().setOnLongClickListener(passthroughClickListener);
|
||||||
mediaThumbnailStub.get().setOnClickListener(passthroughClickListener);
|
mediaThumbnailStub.get().setOnClickListener(passthroughClickListener);
|
||||||
mediaThumbnailStub.get().showShade(TextUtils.isEmpty(messageRecord.getDisplayBody()) && !hasExtraText(messageRecord));
|
mediaThumbnailStub.get().showShade(TextUtils.isEmpty(messageRecord.getDisplayBody(getContext())) && !hasExtraText(messageRecord));
|
||||||
mediaThumbnailStub.get().setConversationColor(messageRecord.isOutgoing() ? defaultBubbleColor
|
mediaThumbnailStub.get().setConversationColor(messageRecord.isOutgoing() ? defaultBubbleColor
|
||||||
: messageRecord.getRecipient().getColor().toConversationColor(context));
|
: messageRecord.getRecipient().getColor().toConversationColor(context));
|
||||||
|
|
||||||
@ -620,7 +620,7 @@ public class ConversationItem extends LinearLayout
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!TextUtils.isEmpty(current.getDisplayBody())) {
|
if (!TextUtils.isEmpty(current.getDisplayBody(getContext()))) {
|
||||||
bottomLeft = 0;
|
bottomLeft = 0;
|
||||||
bottomRight = 0;
|
bottomRight = 0;
|
||||||
}
|
}
|
||||||
@ -787,7 +787,7 @@ public class ConversationItem extends LinearLayout
|
|||||||
private ConversationItemFooter getActiveFooter(@NonNull MessageRecord messageRecord) {
|
private ConversationItemFooter getActiveFooter(@NonNull MessageRecord messageRecord) {
|
||||||
if (hasSharedContact(messageRecord)) {
|
if (hasSharedContact(messageRecord)) {
|
||||||
return sharedContactStub.get().getFooter();
|
return sharedContactStub.get().getFooter();
|
||||||
} else if (hasOnlyThumbnail(messageRecord) && TextUtils.isEmpty(messageRecord.getDisplayBody())) {
|
} else if (hasOnlyThumbnail(messageRecord) && TextUtils.isEmpty(messageRecord.getDisplayBody(getContext()))) {
|
||||||
return mediaThumbnailStub.get().getFooter();
|
return mediaThumbnailStub.get().getFooter();
|
||||||
} else {
|
} else {
|
||||||
return footer;
|
return footer;
|
||||||
|
@ -123,7 +123,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
else if (messageRecord.isOutgoingCall()) icon.setImageResource(R.drawable.ic_call_made_grey600_24dp);
|
else if (messageRecord.isOutgoingCall()) icon.setImageResource(R.drawable.ic_call_made_grey600_24dp);
|
||||||
else icon.setImageResource(R.drawable.ic_call_missed_grey600_24dp);
|
else icon.setImageResource(R.drawable.ic_call_missed_grey600_24dp);
|
||||||
|
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
date.setText(DateUtils.getExtendedRelativeTimeSpanString(getContext(), locale, messageRecord.getDateReceived()));
|
date.setText(DateUtils.getExtendedRelativeTimeSpanString(getContext(), locale, messageRecord.getDateReceived()));
|
||||||
|
|
||||||
title.setVisibility(GONE);
|
title.setVisibility(GONE);
|
||||||
@ -141,7 +141,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
}
|
}
|
||||||
|
|
||||||
title.setText(ExpirationUtil.getExpirationDisplayValue(getContext(), (int)(messageRecord.getExpiresIn() / 1000)));
|
title.setText(ExpirationUtil.getExpirationDisplayValue(getContext(), (int)(messageRecord.getExpiresIn() / 1000)));
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
|
|
||||||
title.setVisibility(VISIBLE);
|
title.setVisibility(VISIBLE);
|
||||||
body.setVisibility(VISIBLE);
|
body.setVisibility(VISIBLE);
|
||||||
@ -151,7 +151,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
private void setIdentityRecord(final MessageRecord messageRecord) {
|
private void setIdentityRecord(final MessageRecord messageRecord) {
|
||||||
icon.setImageResource(R.drawable.ic_security_white_24dp);
|
icon.setImageResource(R.drawable.ic_security_white_24dp);
|
||||||
icon.setColorFilter(new PorterDuffColorFilter(Color.parseColor("#757575"), PorterDuff.Mode.MULTIPLY));
|
icon.setColorFilter(new PorterDuffColorFilter(Color.parseColor("#757575"), PorterDuff.Mode.MULTIPLY));
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
|
|
||||||
title.setVisibility(GONE);
|
title.setVisibility(GONE);
|
||||||
body.setVisibility(VISIBLE);
|
body.setVisibility(VISIBLE);
|
||||||
@ -163,7 +163,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
else icon.setImageResource(R.drawable.ic_info_outline_white_24dp);
|
else icon.setImageResource(R.drawable.ic_info_outline_white_24dp);
|
||||||
|
|
||||||
icon.setColorFilter(new PorterDuffColorFilter(Color.parseColor("#757575"), PorterDuff.Mode.MULTIPLY));
|
icon.setColorFilter(new PorterDuffColorFilter(Color.parseColor("#757575"), PorterDuff.Mode.MULTIPLY));
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
|
|
||||||
title.setVisibility(GONE);
|
title.setVisibility(GONE);
|
||||||
body.setVisibility(VISIBLE);
|
body.setVisibility(VISIBLE);
|
||||||
@ -175,7 +175,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
icon.clearColorFilter();
|
icon.clearColorFilter();
|
||||||
|
|
||||||
GroupUtil.getDescription(getContext(), messageRecord.getBody()).addListener(this);
|
GroupUtil.getDescription(getContext(), messageRecord.getBody()).addListener(this);
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
|
|
||||||
title.setVisibility(GONE);
|
title.setVisibility(GONE);
|
||||||
body.setVisibility(VISIBLE);
|
body.setVisibility(VISIBLE);
|
||||||
@ -185,7 +185,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
private void setJoinedRecord(MessageRecord messageRecord) {
|
private void setJoinedRecord(MessageRecord messageRecord) {
|
||||||
icon.setImageResource(R.drawable.ic_favorite_grey600_24dp);
|
icon.setImageResource(R.drawable.ic_favorite_grey600_24dp);
|
||||||
icon.clearColorFilter();
|
icon.clearColorFilter();
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
|
|
||||||
title.setVisibility(GONE);
|
title.setVisibility(GONE);
|
||||||
body.setVisibility(VISIBLE);
|
body.setVisibility(VISIBLE);
|
||||||
@ -195,7 +195,7 @@ public class ConversationUpdateItem extends LinearLayout
|
|||||||
private void setEndSessionRecord(MessageRecord messageRecord) {
|
private void setEndSessionRecord(MessageRecord messageRecord) {
|
||||||
icon.setImageResource(R.drawable.ic_refresh_white_24dp);
|
icon.setImageResource(R.drawable.ic_refresh_white_24dp);
|
||||||
icon.setColorFilter(new PorterDuffColorFilter(Color.parseColor("#757575"), PorterDuff.Mode.MULTIPLY));
|
icon.setColorFilter(new PorterDuffColorFilter(Color.parseColor("#757575"), PorterDuff.Mode.MULTIPLY));
|
||||||
body.setText(messageRecord.getDisplayBody());
|
body.setText(messageRecord.getDisplayBody(getContext()));
|
||||||
|
|
||||||
title.setVisibility(GONE);
|
title.setVisibility(GONE);
|
||||||
body.setVisibility(VISIBLE);
|
body.setVisibility(VISIBLE);
|
||||||
|
@ -1291,7 +1291,7 @@ public class MmsDatabase extends MessagingDatabase {
|
|||||||
public MessageRecord getCurrent() {
|
public MessageRecord getCurrent() {
|
||||||
SlideDeck slideDeck = new SlideDeck(context, message.getAttachments());
|
SlideDeck slideDeck = new SlideDeck(context, message.getAttachments());
|
||||||
|
|
||||||
return new MediaMmsMessageRecord(context, id, message.getRecipient(), message.getRecipient(),
|
return new MediaMmsMessageRecord(id, message.getRecipient(), message.getRecipient(),
|
||||||
1, System.currentTimeMillis(), System.currentTimeMillis(),
|
1, System.currentTimeMillis(), System.currentTimeMillis(),
|
||||||
0, threadId, message.getBody(),
|
0, threadId, message.getBody(),
|
||||||
slideDeck, slideDeck.getSlides().size(),
|
slideDeck, slideDeck.getSlides().size(),
|
||||||
@ -1372,7 +1372,7 @@ public class MmsDatabase extends MessagingDatabase {
|
|||||||
SlideDeck slideDeck = new SlideDeck(context, new MmsNotificationAttachment(status, messageSize));
|
SlideDeck slideDeck = new SlideDeck(context, new MmsNotificationAttachment(status, messageSize));
|
||||||
|
|
||||||
|
|
||||||
return new NotificationMmsMessageRecord(context, id, recipient, recipient,
|
return new NotificationMmsMessageRecord(id, recipient, recipient,
|
||||||
addressDeviceId, dateSent, dateReceived, deliveryReceiptCount, threadId,
|
addressDeviceId, dateSent, dateReceived, deliveryReceiptCount, threadId,
|
||||||
contentLocationBytes, messageSize, expiry, status,
|
contentLocationBytes, messageSize, expiry, status,
|
||||||
transactionIdBytes, mailbox, subscriptionId, slideDeck,
|
transactionIdBytes, mailbox, subscriptionId, slideDeck,
|
||||||
@ -1413,7 +1413,7 @@ public class MmsDatabase extends MessagingDatabase {
|
|||||||
SlideDeck slideDeck = getSlideDeck(Stream.of(attachments).filterNot(contactAttachments::contains).filterNot(previewAttachments::contains).toList());
|
SlideDeck slideDeck = getSlideDeck(Stream.of(attachments).filterNot(contactAttachments::contains).filterNot(previewAttachments::contains).toList());
|
||||||
Quote quote = getQuote(cursor);
|
Quote quote = getQuote(cursor);
|
||||||
|
|
||||||
return new MediaMmsMessageRecord(context, id, recipient, recipient,
|
return new MediaMmsMessageRecord(id, recipient, recipient,
|
||||||
addressDeviceId, dateSent, dateReceived, deliveryReceiptCount,
|
addressDeviceId, dateSent, dateReceived, deliveryReceiptCount,
|
||||||
threadId, body, slideDeck, partCount, box, mismatches,
|
threadId, body, slideDeck, partCount, box, mismatches,
|
||||||
networkFailures, subscriptionId, expiresIn, expireStarted,
|
networkFailures, subscriptionId, expiresIn, expireStarted,
|
||||||
|
@ -828,7 +828,7 @@ public class SmsDatabase extends MessagingDatabase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public MessageRecord getCurrent() {
|
public MessageRecord getCurrent() {
|
||||||
return new SmsMessageRecord(context, id, message.getMessageBody(),
|
return new SmsMessageRecord(id, message.getMessageBody(),
|
||||||
message.getRecipient(), message.getRecipient(),
|
message.getRecipient(), message.getRecipient(),
|
||||||
1, System.currentTimeMillis(), System.currentTimeMillis(),
|
1, System.currentTimeMillis(), System.currentTimeMillis(),
|
||||||
0, message.isSecureMessage() ? MmsSmsColumns.Types.getOutgoingEncryptedMessageType() : MmsSmsColumns.Types.getOutgoingSmsMessageType(),
|
0, message.isSecureMessage() ? MmsSmsColumns.Types.getOutgoingEncryptedMessageType() : MmsSmsColumns.Types.getOutgoingSmsMessageType(),
|
||||||
@ -883,7 +883,7 @@ public class SmsDatabase extends MessagingDatabase {
|
|||||||
List<IdentityKeyMismatch> mismatches = getMismatches(mismatchDocument);
|
List<IdentityKeyMismatch> mismatches = getMismatches(mismatchDocument);
|
||||||
Recipient recipient = Recipient.from(context, address, true);
|
Recipient recipient = Recipient.from(context, address, true);
|
||||||
|
|
||||||
return new SmsMessageRecord(context, messageId, body, recipient,
|
return new SmsMessageRecord(messageId, body, recipient,
|
||||||
recipient,
|
recipient,
|
||||||
addressDeviceId,
|
addressDeviceId,
|
||||||
dateSent, dateReceived, deliveryReceiptCount, type,
|
dateSent, dateReceived, deliveryReceiptCount, type,
|
||||||
|
@ -687,7 +687,7 @@ public class ThreadDatabase extends Database {
|
|||||||
readReceiptCount = 0;
|
readReceiptCount = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return new ThreadRecord(context, body, snippetUri, recipient, date, count,
|
return new ThreadRecord(body, snippetUri, recipient, date, count,
|
||||||
unreadCount, threadId, deliveryReceiptCount, status, type,
|
unreadCount, threadId, deliveryReceiptCount, status, type,
|
||||||
distributionType, archived, expiresIn, lastSeen, readReceiptCount);
|
distributionType, archived, expiresIn, lastSeen, readReceiptCount);
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,6 @@ import org.thoughtcrime.securesms.recipients.Recipient;
|
|||||||
|
|
||||||
public abstract class DisplayRecord {
|
public abstract class DisplayRecord {
|
||||||
|
|
||||||
protected final Context context;
|
|
||||||
protected final long type;
|
protected final long type;
|
||||||
|
|
||||||
private final Recipient recipient;
|
private final Recipient recipient;
|
||||||
@ -46,11 +45,10 @@ public abstract class DisplayRecord {
|
|||||||
private final int deliveryReceiptCount;
|
private final int deliveryReceiptCount;
|
||||||
private final int readReceiptCount;
|
private final int readReceiptCount;
|
||||||
|
|
||||||
DisplayRecord(Context context, String body, Recipient recipient, long dateSent,
|
DisplayRecord(String body, Recipient recipient, long dateSent,
|
||||||
long dateReceived, long threadId, int deliveryStatus, int deliveryReceiptCount,
|
long dateReceived, long threadId, int deliveryStatus, int deliveryReceiptCount,
|
||||||
long type, int readReceiptCount)
|
long type, int readReceiptCount)
|
||||||
{
|
{
|
||||||
this.context = context.getApplicationContext();
|
|
||||||
this.threadId = threadId;
|
this.threadId = threadId;
|
||||||
this.recipient = recipient;
|
this.recipient = recipient;
|
||||||
this.dateSent = dateSent;
|
this.dateSent = dateSent;
|
||||||
@ -83,7 +81,7 @@ public abstract class DisplayRecord {
|
|||||||
return MmsSmsColumns.Types.isOutgoingMessageType(type);
|
return MmsSmsColumns.Types.isOutgoingMessageType(type);
|
||||||
}
|
}
|
||||||
|
|
||||||
public abstract SpannableString getDisplayBody();
|
public abstract SpannableString getDisplayBody(@NonNull Context context);
|
||||||
|
|
||||||
public Recipient getRecipient() {
|
public Recipient getRecipient() {
|
||||||
return recipient;
|
return recipient;
|
||||||
|
@ -44,10 +44,9 @@ import java.util.List;
|
|||||||
public class MediaMmsMessageRecord extends MmsMessageRecord {
|
public class MediaMmsMessageRecord extends MmsMessageRecord {
|
||||||
private final static String TAG = MediaMmsMessageRecord.class.getSimpleName();
|
private final static String TAG = MediaMmsMessageRecord.class.getSimpleName();
|
||||||
|
|
||||||
private final Context context;
|
|
||||||
private final int partCount;
|
private final int partCount;
|
||||||
|
|
||||||
public MediaMmsMessageRecord(Context context, long id, Recipient conversationRecipient,
|
public MediaMmsMessageRecord(long id, Recipient conversationRecipient,
|
||||||
Recipient individualRecipient, int recipientDeviceId,
|
Recipient individualRecipient, int recipientDeviceId,
|
||||||
long dateSent, long dateReceived, int deliveryReceiptCount,
|
long dateSent, long dateReceived, int deliveryReceiptCount,
|
||||||
long threadId, String body,
|
long threadId, String body,
|
||||||
@ -59,12 +58,10 @@ public class MediaMmsMessageRecord extends MmsMessageRecord {
|
|||||||
@Nullable Quote quote, @Nullable List<Contact> contacts,
|
@Nullable Quote quote, @Nullable List<Contact> contacts,
|
||||||
@Nullable List<LinkPreview> linkPreviews, boolean unidentified)
|
@Nullable List<LinkPreview> linkPreviews, boolean unidentified)
|
||||||
{
|
{
|
||||||
super(context, id, body, conversationRecipient, individualRecipient, recipientDeviceId, dateSent,
|
super(id, body, conversationRecipient, individualRecipient, recipientDeviceId, dateSent,
|
||||||
dateReceived, threadId, Status.STATUS_NONE, deliveryReceiptCount, mailbox, mismatches, failures,
|
dateReceived, threadId, Status.STATUS_NONE, deliveryReceiptCount, mailbox, mismatches, failures,
|
||||||
subscriptionId, expiresIn, expireStarted, slideDeck, readReceiptCount, quote, contacts,
|
subscriptionId, expiresIn, expireStarted, slideDeck, readReceiptCount, quote, contacts,
|
||||||
linkPreviews, unidentified);
|
linkPreviews, unidentified);
|
||||||
|
|
||||||
this.context = context.getApplicationContext();
|
|
||||||
this.partCount = partCount;
|
this.partCount = partCount;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -78,7 +75,7 @@ public class MediaMmsMessageRecord extends MmsMessageRecord {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SpannableString getDisplayBody() {
|
public SpannableString getDisplayBody(@NonNull Context context) {
|
||||||
if (MmsDatabase.Types.isFailedDecryptType(type)) {
|
if (MmsDatabase.Types.isFailedDecryptType(type)) {
|
||||||
return emphasisAdded(context.getString(R.string.MmsMessageRecord_bad_encrypted_mms_message));
|
return emphasisAdded(context.getString(R.string.MmsMessageRecord_bad_encrypted_mms_message));
|
||||||
} else if (MmsDatabase.Types.isDuplicateMessageType(type)) {
|
} else if (MmsDatabase.Types.isDuplicateMessageType(type)) {
|
||||||
@ -89,6 +86,6 @@ public class MediaMmsMessageRecord extends MmsMessageRecord {
|
|||||||
return emphasisAdded(context.getString(R.string.MessageRecord_message_encrypted_with_a_legacy_protocol_version_that_is_no_longer_supported));
|
return emphasisAdded(context.getString(R.string.MessageRecord_message_encrypted_with_a_legacy_protocol_version_that_is_no_longer_supported));
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.getDisplayBody();
|
return super.getDisplayBody(context);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
package org.thoughtcrime.securesms.database.model;
|
package org.thoughtcrime.securesms.database.model;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.support.annotation.NonNull;
|
||||||
import android.text.Spannable;
|
import android.text.Spannable;
|
||||||
import android.text.SpannableString;
|
import android.text.SpannableString;
|
||||||
import android.text.style.RelativeSizeSpan;
|
import android.text.style.RelativeSizeSpan;
|
||||||
@ -53,7 +54,7 @@ public abstract class MessageRecord extends DisplayRecord {
|
|||||||
private final long expireStarted;
|
private final long expireStarted;
|
||||||
private final boolean unidentified;
|
private final boolean unidentified;
|
||||||
|
|
||||||
MessageRecord(Context context, long id, String body, Recipient conversationRecipient,
|
MessageRecord(long id, String body, Recipient conversationRecipient,
|
||||||
Recipient individualRecipient, int recipientDeviceId,
|
Recipient individualRecipient, int recipientDeviceId,
|
||||||
long dateSent, long dateReceived, long threadId,
|
long dateSent, long dateReceived, long threadId,
|
||||||
int deliveryStatus, int deliveryReceiptCount, long type,
|
int deliveryStatus, int deliveryReceiptCount, long type,
|
||||||
@ -62,7 +63,7 @@ public abstract class MessageRecord extends DisplayRecord {
|
|||||||
int subscriptionId, long expiresIn, long expireStarted,
|
int subscriptionId, long expiresIn, long expireStarted,
|
||||||
int readReceiptCount, boolean unidentified)
|
int readReceiptCount, boolean unidentified)
|
||||||
{
|
{
|
||||||
super(context, body, conversationRecipient, dateSent, dateReceived,
|
super(body, conversationRecipient, dateSent, dateReceived,
|
||||||
threadId, deliveryStatus, deliveryReceiptCount, type, readReceiptCount);
|
threadId, deliveryStatus, deliveryReceiptCount, type, readReceiptCount);
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.individualRecipient = individualRecipient;
|
this.individualRecipient = individualRecipient;
|
||||||
@ -87,7 +88,7 @@ public abstract class MessageRecord extends DisplayRecord {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SpannableString getDisplayBody() {
|
public SpannableString getDisplayBody(@NonNull Context context) {
|
||||||
if (isGroupUpdate() && isOutgoing()) {
|
if (isGroupUpdate() && isOutgoing()) {
|
||||||
return new SpannableString(context.getString(R.string.MessageRecord_you_updated_group));
|
return new SpannableString(context.getString(R.string.MessageRecord_you_updated_group));
|
||||||
} else if (isGroupUpdate()) {
|
} else if (isGroupUpdate()) {
|
||||||
|
@ -23,7 +23,7 @@ public abstract class MmsMessageRecord extends MessageRecord {
|
|||||||
private final @NonNull List<Contact> contacts = new LinkedList<>();
|
private final @NonNull List<Contact> contacts = new LinkedList<>();
|
||||||
private final @NonNull List<LinkPreview> linkPreviews = new LinkedList<>();
|
private final @NonNull List<LinkPreview> linkPreviews = new LinkedList<>();
|
||||||
|
|
||||||
MmsMessageRecord(Context context, long id, String body, Recipient conversationRecipient,
|
MmsMessageRecord(long id, String body, Recipient conversationRecipient,
|
||||||
Recipient individualRecipient, int recipientDeviceId, long dateSent,
|
Recipient individualRecipient, int recipientDeviceId, long dateSent,
|
||||||
long dateReceived, long threadId, int deliveryStatus, int deliveryReceiptCount,
|
long dateReceived, long threadId, int deliveryStatus, int deliveryReceiptCount,
|
||||||
long type, List<IdentityKeyMismatch> mismatches,
|
long type, List<IdentityKeyMismatch> mismatches,
|
||||||
@ -32,7 +32,7 @@ public abstract class MmsMessageRecord extends MessageRecord {
|
|||||||
@Nullable Quote quote, @NonNull List<Contact> contacts,
|
@Nullable Quote quote, @NonNull List<Contact> contacts,
|
||||||
@NonNull List<LinkPreview> linkPreviews, boolean unidentified)
|
@NonNull List<LinkPreview> linkPreviews, boolean unidentified)
|
||||||
{
|
{
|
||||||
super(context, id, body, conversationRecipient, individualRecipient, recipientDeviceId, dateSent, dateReceived, threadId, deliveryStatus, deliveryReceiptCount, type, mismatches, networkFailures, subscriptionId, expiresIn, expireStarted, readReceiptCount, unidentified);
|
super(id, body, conversationRecipient, individualRecipient, recipientDeviceId, dateSent, dateReceived, threadId, deliveryStatus, deliveryReceiptCount, type, mismatches, networkFailures, subscriptionId, expiresIn, expireStarted, readReceiptCount, unidentified);
|
||||||
|
|
||||||
this.slideDeck = slideDeck;
|
this.slideDeck = slideDeck;
|
||||||
this.quote = quote;
|
this.quote = quote;
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
package org.thoughtcrime.securesms.database.model;
|
package org.thoughtcrime.securesms.database.model;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.support.annotation.NonNull;
|
||||||
import android.text.SpannableString;
|
import android.text.SpannableString;
|
||||||
|
|
||||||
import org.thoughtcrime.securesms.R;
|
import org.thoughtcrime.securesms.R;
|
||||||
@ -46,14 +47,14 @@ public class NotificationMmsMessageRecord extends MmsMessageRecord {
|
|||||||
private final int status;
|
private final int status;
|
||||||
private final byte[] transactionId;
|
private final byte[] transactionId;
|
||||||
|
|
||||||
public NotificationMmsMessageRecord(Context context, long id, Recipient conversationRecipient,
|
public NotificationMmsMessageRecord(long id, Recipient conversationRecipient,
|
||||||
Recipient individualRecipient, int recipientDeviceId,
|
Recipient individualRecipient, int recipientDeviceId,
|
||||||
long dateSent, long dateReceived, int deliveryReceiptCount,
|
long dateSent, long dateReceived, int deliveryReceiptCount,
|
||||||
long threadId, byte[] contentLocation, long messageSize,
|
long threadId, byte[] contentLocation, long messageSize,
|
||||||
long expiry, int status, byte[] transactionId, long mailbox,
|
long expiry, int status, byte[] transactionId, long mailbox,
|
||||||
int subscriptionId, SlideDeck slideDeck, int readReceiptCount)
|
int subscriptionId, SlideDeck slideDeck, int readReceiptCount)
|
||||||
{
|
{
|
||||||
super(context, id, "", conversationRecipient, individualRecipient, recipientDeviceId,
|
super(id, "", conversationRecipient, individualRecipient, recipientDeviceId,
|
||||||
dateSent, dateReceived, threadId, Status.STATUS_NONE, deliveryReceiptCount, mailbox,
|
dateSent, dateReceived, threadId, Status.STATUS_NONE, deliveryReceiptCount, mailbox,
|
||||||
new LinkedList<IdentityKeyMismatch>(), new LinkedList<NetworkFailure>(), subscriptionId,
|
new LinkedList<IdentityKeyMismatch>(), new LinkedList<NetworkFailure>(), subscriptionId,
|
||||||
0, 0, slideDeck, readReceiptCount, null, Collections.emptyList(), Collections.emptyList(), false);
|
0, 0, slideDeck, readReceiptCount, null, Collections.emptyList(), Collections.emptyList(), false);
|
||||||
@ -111,7 +112,7 @@ public class NotificationMmsMessageRecord extends MmsMessageRecord {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SpannableString getDisplayBody() {
|
public SpannableString getDisplayBody(@NonNull Context context) {
|
||||||
if (status == MmsDatabase.Status.DOWNLOAD_INITIALIZED) {
|
if (status == MmsDatabase.Status.DOWNLOAD_INITIALIZED) {
|
||||||
return emphasisAdded(context.getString(R.string.NotificationMmsMessageRecord_multimedia_message));
|
return emphasisAdded(context.getString(R.string.NotificationMmsMessageRecord_multimedia_message));
|
||||||
} else if (status == MmsDatabase.Status.DOWNLOAD_CONNECTING) {
|
} else if (status == MmsDatabase.Status.DOWNLOAD_CONNECTING) {
|
||||||
|
@ -18,6 +18,7 @@
|
|||||||
package org.thoughtcrime.securesms.database.model;
|
package org.thoughtcrime.securesms.database.model;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.support.annotation.NonNull;
|
||||||
import android.text.SpannableString;
|
import android.text.SpannableString;
|
||||||
|
|
||||||
import org.thoughtcrime.securesms.R;
|
import org.thoughtcrime.securesms.R;
|
||||||
@ -38,7 +39,7 @@ import java.util.List;
|
|||||||
|
|
||||||
public class SmsMessageRecord extends MessageRecord {
|
public class SmsMessageRecord extends MessageRecord {
|
||||||
|
|
||||||
public SmsMessageRecord(Context context, long id,
|
public SmsMessageRecord(long id,
|
||||||
String body, Recipient recipient,
|
String body, Recipient recipient,
|
||||||
Recipient individualRecipient,
|
Recipient individualRecipient,
|
||||||
int recipientDeviceId,
|
int recipientDeviceId,
|
||||||
@ -49,7 +50,7 @@ public class SmsMessageRecord extends MessageRecord {
|
|||||||
int subscriptionId, long expiresIn, long expireStarted,
|
int subscriptionId, long expiresIn, long expireStarted,
|
||||||
int readReceiptCount, boolean unidentified)
|
int readReceiptCount, boolean unidentified)
|
||||||
{
|
{
|
||||||
super(context, id, body, recipient, individualRecipient, recipientDeviceId,
|
super(id, body, recipient, individualRecipient, recipientDeviceId,
|
||||||
dateSent, dateReceived, threadId, status, deliveryReceiptCount, type,
|
dateSent, dateReceived, threadId, status, deliveryReceiptCount, type,
|
||||||
mismatches, new LinkedList<>(), subscriptionId,
|
mismatches, new LinkedList<>(), subscriptionId,
|
||||||
expiresIn, expireStarted, readReceiptCount, unidentified);
|
expiresIn, expireStarted, readReceiptCount, unidentified);
|
||||||
@ -60,7 +61,7 @@ public class SmsMessageRecord extends MessageRecord {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SpannableString getDisplayBody() {
|
public SpannableString getDisplayBody(@NonNull Context context) {
|
||||||
if (SmsDatabase.Types.isFailedDecryptType(type)) {
|
if (SmsDatabase.Types.isFailedDecryptType(type)) {
|
||||||
return emphasisAdded(context.getString(R.string.MessageDisplayHelper_bad_encrypted_message));
|
return emphasisAdded(context.getString(R.string.MessageDisplayHelper_bad_encrypted_message));
|
||||||
} else if (isCorruptedKeyExchange()) {
|
} else if (isCorruptedKeyExchange()) {
|
||||||
@ -84,7 +85,7 @@ public class SmsMessageRecord extends MessageRecord {
|
|||||||
} else if (isEndSession()) {
|
} else if (isEndSession()) {
|
||||||
return emphasisAdded(context.getString(R.string.SmsMessageRecord_secure_session_reset_s, getIndividualRecipient().toShortString()));
|
return emphasisAdded(context.getString(R.string.SmsMessageRecord_secure_session_reset_s, getIndividualRecipient().toShortString()));
|
||||||
} else {
|
} else {
|
||||||
return super.getDisplayBody();
|
return super.getDisplayBody(context);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,7 +40,6 @@ import org.thoughtcrime.securesms.util.ExpirationUtil;
|
|||||||
*/
|
*/
|
||||||
public class ThreadRecord extends DisplayRecord {
|
public class ThreadRecord extends DisplayRecord {
|
||||||
|
|
||||||
private @NonNull final Context context;
|
|
||||||
private @Nullable final Uri snippetUri;
|
private @Nullable final Uri snippetUri;
|
||||||
private final long count;
|
private final long count;
|
||||||
private final int unreadCount;
|
private final int unreadCount;
|
||||||
@ -49,14 +48,13 @@ public class ThreadRecord extends DisplayRecord {
|
|||||||
private final long expiresIn;
|
private final long expiresIn;
|
||||||
private final long lastSeen;
|
private final long lastSeen;
|
||||||
|
|
||||||
public ThreadRecord(@NonNull Context context, @NonNull String body, @Nullable Uri snippetUri,
|
public ThreadRecord(@NonNull String body, @Nullable Uri snippetUri,
|
||||||
@NonNull Recipient recipient, long date, long count, int unreadCount,
|
@NonNull Recipient recipient, long date, long count, int unreadCount,
|
||||||
long threadId, int deliveryReceiptCount, int status, long snippetType,
|
long threadId, int deliveryReceiptCount, int status, long snippetType,
|
||||||
int distributionType, boolean archived, long expiresIn, long lastSeen,
|
int distributionType, boolean archived, long expiresIn, long lastSeen,
|
||||||
int readReceiptCount)
|
int readReceiptCount)
|
||||||
{
|
{
|
||||||
super(context, body, recipient, date, date, threadId, status, deliveryReceiptCount, snippetType, readReceiptCount);
|
super(body, recipient, date, date, threadId, status, deliveryReceiptCount, snippetType, readReceiptCount);
|
||||||
this.context = context.getApplicationContext();
|
|
||||||
this.snippetUri = snippetUri;
|
this.snippetUri = snippetUri;
|
||||||
this.count = count;
|
this.count = count;
|
||||||
this.unreadCount = unreadCount;
|
this.unreadCount = unreadCount;
|
||||||
@ -71,7 +69,7 @@ public class ThreadRecord extends DisplayRecord {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public SpannableString getDisplayBody() {
|
public SpannableString getDisplayBody(@NonNull Context context) {
|
||||||
if (isGroupUpdate()) {
|
if (isGroupUpdate()) {
|
||||||
return emphasisAdded(context.getString(R.string.ThreadRecord_group_updated));
|
return emphasisAdded(context.getString(R.string.ThreadRecord_group_updated));
|
||||||
} else if (isGroupQuit()) {
|
} else if (isGroupQuit()) {
|
||||||
|
@ -437,7 +437,7 @@ public class MessageNotifier {
|
|||||||
Recipient recipient = record.getIndividualRecipient();
|
Recipient recipient = record.getIndividualRecipient();
|
||||||
Recipient conversationRecipient = record.getRecipient();
|
Recipient conversationRecipient = record.getRecipient();
|
||||||
long threadId = record.getThreadId();
|
long threadId = record.getThreadId();
|
||||||
CharSequence body = record.getDisplayBody();
|
CharSequence body = record.getDisplayBody(context);
|
||||||
Recipient threadRecipients = null;
|
Recipient threadRecipients = null;
|
||||||
SlideDeck slideDeck = null;
|
SlideDeck slideDeck = null;
|
||||||
long timestamp = record.getTimestamp();
|
long timestamp = record.getTimestamp();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user