From 211217dc55b203d96ecc143099a880e0a53e3ca5 Mon Sep 17 00:00:00 2001 From: "B. Petersen" Date: Wed, 12 Sep 2018 00:54:54 +0200 Subject: [PATCH] show name in ConversationList, tackles #21 --- .../securesms/connect/ApplicationDcContext.java | 17 ++++------------- .../securesms/recipients/Recipient.java | 2 +- .../securesms/recipients/RecipientProvider.java | 10 +++++----- 3 files changed, 10 insertions(+), 19 deletions(-) diff --git a/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java b/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java index 210071b30..5cc65b6c1 100644 --- a/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java +++ b/src/org/thoughtcrime/securesms/connect/ApplicationDcContext.java @@ -38,6 +38,7 @@ import org.thoughtcrime.securesms.database.RecipientDatabase; import org.thoughtcrime.securesms.database.ThreadDatabase; import org.thoughtcrime.securesms.database.model.ThreadRecord; import org.thoughtcrime.securesms.recipients.Recipient; +import org.thoughtcrime.securesms.recipients.RecipientProvider; import org.thoughtcrime.securesms.util.TextSecurePreferences; import org.thoughtcrime.securesms.util.Util; import org.whispersystems.libsignal.util.guava.Optional; @@ -103,24 +104,14 @@ public class ApplicationDcContext extends DcContext { DcChat chat = chatlist.getChat(i); DcLot summary = chatlist.getSummary(i, chat); int distributionType = chatId==DcChat.DC_CHAT_ID_ARCHIVED_LINK? ThreadDatabase.DistributionTypes.ARCHIVE : ThreadDatabase.DistributionTypes.CONVERSATION; - Address address = Address.UNKNOWN;//Address.fromSerialized(cursor.getString(cursor.getColumnIndexOrThrow(ThreadDatabase.ADDRESS))); - - Optional settings; - Optional groupRecord; - - if (distributionType != ThreadDatabase.DistributionTypes.ARCHIVE && distributionType != ThreadDatabase.DistributionTypes.INBOX_ZERO) { - settings = Optional.absent();//DatabaseFactory.getRecipientDatabase(context).getRecipientSettings(cursor); - groupRecord = Optional.absent();//DatabaseFactory.getGroupDatabase(context).getGroup(cursor); - } else { - settings = Optional.absent(); - groupRecord = Optional.absent(); - } String body = summary.getText1(); if(!body.isEmpty()) { body += ": "; } body += summary.getText2(); - Recipient recipient = Recipient.from(context, address, settings, groupRecord, true); + RecipientProvider.RecipientDetails recipientDetails = new RecipientProvider.RecipientDetails(chat.getName(), null, false, null, null); + + Recipient recipient = new Recipient(Address.UNKNOWN, recipientDetails); long date = summary.getTimestamp()*1000; long count = 1; int unreadCount = getFreshMsgCount(chatId); diff --git a/src/org/thoughtcrime/securesms/recipients/Recipient.java b/src/org/thoughtcrime/securesms/recipients/Recipient.java index f56221b72..6e1c83a80 100644 --- a/src/org/thoughtcrime/securesms/recipients/Recipient.java +++ b/src/org/thoughtcrime/securesms/recipients/Recipient.java @@ -215,7 +215,7 @@ public class Recipient implements RecipientModifiedListener { }); } - Recipient(@NonNull Address address, @NonNull RecipientDetails details) { + public Recipient(@NonNull Address address, @NonNull RecipientDetails details) { this.address = address; this.contactUri = details.contactUri; this.name = details.name; diff --git a/src/org/thoughtcrime/securesms/recipients/RecipientProvider.java b/src/org/thoughtcrime/securesms/recipients/RecipientProvider.java index 468932bbf..2cc1d2de3 100644 --- a/src/org/thoughtcrime/securesms/recipients/RecipientProvider.java +++ b/src/org/thoughtcrime/securesms/recipients/RecipientProvider.java @@ -42,7 +42,7 @@ import java.util.Map; import java.util.concurrent.Callable; import java.util.concurrent.ExecutorService; -class RecipientProvider { +public class RecipientProvider { @SuppressWarnings("unused") private static final String TAG = RecipientProvider.class.getSimpleName(); @@ -151,7 +151,7 @@ class RecipientProvider { return new RecipientDetails(context.getString(R.string.RecipientProvider_unnamed_group), null, false, settings.orNull(), null); } - static class RecipientDetails { + public static class RecipientDetails { @Nullable final String name; @Nullable final String customLabel; @Nullable final Uri systemContactPhoto; @@ -175,9 +175,9 @@ class RecipientProvider { final boolean profileSharing; final boolean systemContact; - RecipientDetails(@Nullable String name, @Nullable Long groupAvatarId, - boolean systemContact, @Nullable RecipientSettings settings, - @Nullable List participants) + public RecipientDetails(@Nullable String name, @Nullable Long groupAvatarId, + boolean systemContact, @Nullable RecipientSettings settings, + @Nullable List participants) { this.groupAvatarId = groupAvatarId; this.systemContactPhoto = settings != null ? Util.uri(settings.getSystemContactPhotoUri()) : null;