show name in ConversationList, tackles #21

This commit is contained in:
B. Petersen
2018-09-12 00:54:54 +02:00
parent bd06b778a6
commit 211217dc55
3 changed files with 10 additions and 19 deletions
@@ -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<RecipientDatabase.RecipientSettings> settings;
Optional<GroupDatabase.GroupRecord> 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);
@@ -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;
@@ -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<Recipient> participants)
public RecipientDetails(@Nullable String name, @Nullable Long groupAvatarId,
boolean systemContact, @Nullable RecipientSettings settings,
@Nullable List<Recipient> participants)
{
this.groupAvatarId = groupAvatarId;
this.systemContactPhoto = settings != null ? Util.uri(settings.getSystemContactPhotoUri()) : null;