From 282f85fb3bf34907f9a9ae2b3e15423362743437 Mon Sep 17 00:00:00 2001 From: Alexander Bakker Date: Sun, 20 Nov 2022 18:49:47 +0100 Subject: [PATCH] Don't show "Export all groups" option if there are no groups --- .../ImportExportPreferencesFragment.java | 15 ++++++++++----- app/src/main/res/layout/dialog_export.xml | 3 ++- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/ImportExportPreferencesFragment.java b/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/ImportExportPreferencesFragment.java index f0e6a696..9f5d2f04 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/ImportExportPreferencesFragment.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/ImportExportPreferencesFragment.java @@ -52,6 +52,7 @@ import java.util.List; import java.util.Objects; import java.util.Random; import java.util.Set; +import java.util.TreeSet; import javax.crypto.Cipher; @@ -173,11 +174,15 @@ public class ImportExportPreferencesFragment extends PreferencesFragment { passwordInfoText.setVisibility(checkBoxEncrypt.isChecked() && isBackupPasswordSet ? View.VISIBLE : View.GONE); }); - for (String group: _vaultManager.getVault().getGroups()) { - CheckBox box = new CheckBox(requireContext()); - box.setText(group); - box.setChecked(false); - groupsSelection.addView(box); + TreeSet groups = _vaultManager.getVault().getGroups(); + if (groups.size() > 0) { + checkBoxExportAllGroups.setVisibility(View.VISIBLE); + for (String group: groups) { + CheckBox box = new CheckBox(requireContext()); + box.setText(group); + box.setChecked(false); + groupsSelection.addView(box); + } } AlertDialog dialog = new AlertDialog.Builder(requireContext()) diff --git a/app/src/main/res/layout/dialog_export.xml b/app/src/main/res/layout/dialog_export.xml index d04ca043..aa1cdb09 100644 --- a/app/src/main/res/layout/dialog_export.xml +++ b/app/src/main/res/layout/dialog_export.xml @@ -73,7 +73,8 @@ android:layout_marginEnd="20dp" android:layout_marginTop="5dp" android:text="@string/export_all_groups" - android:checked="true"/> + android:checked="true" + android:visibility="gone" />