Correctly load group avatars in RecipientPreferencesActivity

Fixes #7102
// FREEBIE
This commit is contained in:
Moxie Marlinspike 2017-10-16 10:16:15 -07:00
parent e87aa85bae
commit 7a8bd0597a
1 changed files with 13 additions and 3 deletions

View File

@ -216,9 +216,19 @@ public class RecipientPreferenceActivity extends PassphraseRequiredActionBarActi
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<GroupDatabase.GroupRecord> 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) {