From 69e656af7697d1b8817e6d14c159125c8b0fbed2 Mon Sep 17 00:00:00 2001 From: Christian Ascheberg Date: Thu, 5 Oct 2017 20:07:44 +0200 Subject: [PATCH] Add back a way to access quick contact from conversation Closes #7051 // FREEBIE --- .../securesms/ConversationActivity.java | 13 +++++++++++++ .../securesms/ConversationTitleView.java | 6 ++++++ 2 files changed, 19 insertions(+) diff --git a/src/org/thoughtcrime/securesms/ConversationActivity.java b/src/org/thoughtcrime/securesms/ConversationActivity.java index 29dc68b255..c982c94e57 100644 --- a/src/org/thoughtcrime/securesms/ConversationActivity.java +++ b/src/org/thoughtcrime/securesms/ConversationActivity.java @@ -856,6 +856,18 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity } } + private boolean handleDisplayQuickContact() { + if (recipient.getAddress().isGroup()) return false; + + if (recipient.getContactUri() != null) { + ContactsContract.QuickContact.showQuickContact(ConversationActivity.this, titleView, recipient.getContactUri(), ContactsContract.QuickContact.MODE_LARGE, null); + } else { + handleAddToContacts(); + } + + return true; + } + private void handleAddAttachment() { if (this.isMmsEnabled || isSecureText) { if (attachmentTypeSelector == null) { @@ -1209,6 +1221,7 @@ public class ConversationActivity extends PassphraseRequiredActionBarActivity }); titleView.setOnClickListener(v -> handleConversationSettings()); + titleView.setOnLongClickListener(v -> handleDisplayQuickContact()); titleView.setOnBackClickedListener(view -> super.onBackPressed()); unblockButton.setOnClickListener(v -> handleUnblock()); makeDefaultSmsButton.setOnClickListener(v -> handleMakeDefaultSms()); diff --git a/src/org/thoughtcrime/securesms/ConversationTitleView.java b/src/org/thoughtcrime/securesms/ConversationTitleView.java index 1e74bb9c5c..de72b09f00 100644 --- a/src/org/thoughtcrime/securesms/ConversationTitleView.java +++ b/src/org/thoughtcrime/securesms/ConversationTitleView.java @@ -84,6 +84,12 @@ public class ConversationTitleView extends RelativeLayout { this.avatar.setOnClickListener(listener); } + @Override + public void setOnLongClickListener(@Nullable OnLongClickListener listener) { + this.content.setOnLongClickListener(listener); + this.avatar.setOnLongClickListener(listener); + } + public void setOnBackClickedListener(@Nullable OnClickListener listener) { this.back.setOnClickListener(listener); }