From 7a8bd0597a24ce0fbe474fca77f8cbdf3f02b225 Mon Sep 17 00:00:00 2001 From: Moxie Marlinspike Date: Mon, 16 Oct 2017 10:16:15 -0700 Subject: [PATCH] Correctly load group avatars in RecipientPreferencesActivity Fixes #7102 // FREEBIE --- .../securesms/RecipientPreferenceActivity.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java b/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java index 7759a8e8b77..12d584e38d1 100644 --- a/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java +++ b/src/org/thoughtcrime/securesms/RecipientPreferenceActivity.java @@ -216,9 +216,19 @@ private void setHeader(@NonNull Recipient recipient) { Uri contentUri = ContactsContract.Contacts.lookupContact(getContentResolver(), recipient.getContactUri()); windowManager.getDefaultDisplay().getMetrics(metrics); - return ContactPhotoFactory.getContactPhoto(RecipientPreferenceActivity.this, contentUri, - recipient.getAddress(), recipient.getName(), - metrics.widthPixels); + if (recipient.isGroupRecipient()) { + Optional groupRecord = DatabaseFactory.getGroupDatabase(RecipientPreferenceActivity.this).getGroup(recipient.getAddress().toGroupString()); + + if (groupRecord.isPresent() && groupRecord.get().getAvatar() != null) { + return ContactPhotoFactory.getGroupContactPhoto(groupRecord.get().getAvatar()); + } else { + return ContactPhotoFactory.getDefaultGroupPhoto(); + } + } else { + return ContactPhotoFactory.getContactPhoto(RecipientPreferenceActivity.this, contentUri, + recipient.getAddress(), recipient.getName(), + metrics.widthPixels); + } } protected void onPostExecute(@NonNull ContactPhoto contactPhoto) {