From fa258fb8b375389ae9f3e17f1021dc8aef40d623 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Thu, 21 Sep 2017 22:53:56 +0200 Subject: [PATCH] fix on click listener for linked identity items --- .../keychain/ui/adapter/IdentityAdapter.java | 14 ++++++++++++-- .../keychain/ui/keyview/LinkedIdViewFragment.java | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/IdentityAdapter.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/IdentityAdapter.java index 52ef50b5c..ed2e6ac8d 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/IdentityAdapter.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/adapter/IdentityAdapter.java @@ -97,7 +97,8 @@ public class IdentityAdapter extends RecyclerView.Adapter { return new UserIdViewHolder( layoutInflater.inflate(R.layout.view_key_identity_user_id, parent, false), identityClickListener); } else if (viewType == VIEW_TYPE_LINKED_ID) { - return new LinkedIdViewHolder(layoutInflater.inflate(R.layout.linked_id_item, parent, false)); + return new LinkedIdViewHolder(layoutInflater.inflate(R.layout.linked_id_item, parent, false), + identityClickListener); } else { throw new IllegalStateException("unhandled identitytype!"); } @@ -136,13 +137,22 @@ public class IdentityAdapter extends RecyclerView.Adapter { final private TextView vTitle; final private TextView vComment; - public LinkedIdViewHolder(View view) { + public LinkedIdViewHolder(View view, final IdentityClickListener identityClickListener) { super(view); vVerified = (ImageView) view.findViewById(R.id.linked_id_certified_icon); vIcon = (ImageView) view.findViewById(R.id.linked_id_type_icon); vTitle = (TextView) view.findViewById(R.id.linked_id_title); vComment = (TextView) view.findViewById(R.id.linked_id_comment); + + view.setOnClickListener(new OnClickListener() { + @Override + public void onClick(View v) { + if (identityClickListener != null) { + identityClickListener.onClickIdentity(getAdapterPosition()); + } + } + }); } public void bind(Context context, LinkedIdInfo info, boolean isSecret) { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/LinkedIdViewFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/LinkedIdViewFragment.java index a0a14440c..f419418b4 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/LinkedIdViewFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/LinkedIdViewFragment.java @@ -275,7 +275,7 @@ public class LinkedIdViewFragment extends CryptoOperationFragment implements vKeySpinnerContainer = root.findViewById(R.id.cert_key_spincontainer); vButtonSwitcher = (ViewAnimator) root.findViewById(R.id.button_animator); - mLinkedIdHolder = new IdentityAdapter.LinkedIdViewHolder(root); + mLinkedIdHolder = new IdentityAdapter.LinkedIdViewHolder(root, null); vButtonVerify = root.findViewById(R.id.button_verify); vButtonRetry = root.findViewById(R.id.button_retry);