From da9f34bb8e377456f4790c0bd29a8debb5f0f97c Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Thu, 12 Jul 2018 13:27:18 +0200 Subject: [PATCH] hide identities card if there are no identities --- .../keychain/ui/keyview/ViewKeyFragment.java | 2 -- .../keychain/ui/keyview/view/IdentitiesCardView.java | 7 +++++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/ViewKeyFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/ViewKeyFragment.java index 7aa2303a7..004a7cb0c 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/ViewKeyFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/ViewKeyFragment.java @@ -108,7 +108,6 @@ public class ViewKeyFragment extends Fragment implements OnMenuItemClickListener }); identitiesCardView.setIdentitiesAdapter(identitiesAdapter); - identitiesCardView.setVisibility(View.GONE); keyStatusCardView.setVisibility(View.GONE); keyStatusHealth.setOnHealthClickListener((v) -> onKeyHealthClick()); @@ -298,7 +297,6 @@ public class ViewKeyFragment extends Fragment implements OnMenuItemClickListener private void onLoadIdentityInfo(List identityInfos) { identitiesAdapter.setData(identityInfos, unifiedKeyInfo.has_any_secret()); - identitiesCardView.setVisibility(View.VISIBLE); } private void onLoadSystemContact(SystemContactInfo systemContactInfo) { diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/view/IdentitiesCardView.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/view/IdentitiesCardView.java index 98b7ccdba..9a9e2b5b0 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/view/IdentitiesCardView.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/keyview/view/IdentitiesCardView.java @@ -22,6 +22,7 @@ import android.content.Context; import android.support.v7.widget.CardView; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; +import android.support.v7.widget.RecyclerView.AdapterDataObserver; import android.util.AttributeSet; import android.view.LayoutInflater; import android.view.View; @@ -50,6 +51,12 @@ public class IdentitiesCardView extends CardView { } public void setIdentitiesAdapter(IdentityAdapter identityAdapter) { + identityAdapter.registerAdapterDataObserver(new AdapterDataObserver() { + @Override + public void onChanged() { + setVisibility(identityAdapter.getItemCount() > 0 ? View.VISIBLE : View.GONE); + } + }); vIdentities.setAdapter(identityAdapter); }