diff --git a/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java b/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java index 914d5afaa4f27ac87539b0262c64e696a03511d7..f7664346536fbec38b3881ef249ad35023f1b2f2 100644 --- a/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java @@ -18,7 +18,6 @@ import android.provider.Settings; import android.text.Spannable; import android.text.SpannableString; import android.text.style.RelativeSizeSpan; -import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; @@ -522,10 +521,11 @@ public class ContactDetailsActivity extends OmemoActivity binding.detailsContactXmppAddress.setText( IrregularUnicodeDetector.style(this, contact.getJid())); final String account = contact.getAccount().getJid().asBareJid().toString(); + binding.detailsAccount.setOnClickListener(this::onDetailsAccountClicked); binding.detailsAccount.setText(getString(R.string.using_account, account)); AvatarWorkerTask.loadAvatar( - contact, binding.detailsContactBadge, R.dimen.avatar_on_details_screen_size); - binding.detailsContactBadge.setOnClickListener(this::onBadgeClick); + contact, binding.detailsAvatar, R.dimen.avatar_on_details_screen_size); + binding.detailsAvatar.setOnClickListener(this::onAvatarClicked); if (QuickConversationsService.isContactListIntegration(this)) { if (contact.getSystemAccount() == null) { binding.addAddressBook.setText(R.string.save_to_contact); @@ -669,9 +669,25 @@ public class ContactDetailsActivity extends OmemoActivity } } - private void onBadgeClick(final View view) { + private void onDetailsAccountClicked(final View view) { + final var contact = this.contact; + if (contact == null) { + return; + } + switchToAccount(contact.getAccount()); + } + + private void onAvatarClicked(final View view) { + final var contact = this.contact; + if (contact == null) { + return; + } + final var avatar = contact.getAvatar(); + if (avatar == null) { + return; + } final var intent = new Intent(this, ViewProfilePictureActivity.class); - intent.setData(Uri.fromParts("avatar", contact.getAvatar(), null)); + intent.setData(Uri.fromParts("avatar", avatar, null)); intent.putExtra(ViewProfilePictureActivity.EXTRA_DISPLAY_NAME, contact.getDisplayName()); startActivity(intent); } diff --git a/src/main/res/layout/activity_contact_details.xml b/src/main/res/layout/activity_contact_details.xml index 83a325e2420634a68d02618a1a33f7f2e778b3af..1fceadc361ac56cf19c73b234e524b1a39d94b2b 100644 --- a/src/main/res/layout/activity_contact_details.xml +++ b/src/main/res/layout/activity_contact_details.xml @@ -45,7 +45,7 @@ android:padding="@dimen/card_padding_regular">