diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java
index b612b672..b8c23ae7 100644
--- a/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java
+++ b/app/src/main/java/com/beemdevelopment/aegis/ui/GroupManagerActivity.java
@@ -3,6 +3,7 @@ package com.beemdevelopment.aegis.ui;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
+import android.view.View;
import com.beemdevelopment.aegis.R;
import com.beemdevelopment.aegis.ui.views.GroupAdapter;
@@ -18,6 +19,8 @@ import androidx.recyclerview.widget.RecyclerView;
public class GroupManagerActivity extends AegisActivity implements GroupAdapter.Listener {
private GroupAdapter _adapter;
private TreeSet _groups;
+ private RecyclerView _slotsView;
+ private View _emptyStateView;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -35,15 +38,28 @@ public class GroupManagerActivity extends AegisActivity implements GroupAdapter.
// set up the recycler view
_adapter = new GroupAdapter(this);
- RecyclerView slotsView = findViewById(R.id.list_slots);
+ _slotsView= findViewById(R.id.list_slots);
LinearLayoutManager layoutManager = new LinearLayoutManager(this);
- slotsView.setLayoutManager(layoutManager);
- slotsView.setAdapter(_adapter);
- slotsView.setNestedScrollingEnabled(false);
+ _slotsView.setLayoutManager(layoutManager);
+ _slotsView.setAdapter(_adapter);
+ _slotsView.setNestedScrollingEnabled(false);
for (String group : _groups) {
_adapter.addGroup(group);
}
+
+ _emptyStateView = findViewById(R.id.vEmptyList);
+ updateEmptyState();
+ }
+
+ private void updateEmptyState() {
+ if (_adapter.getItemCount() > 0) {
+ _slotsView.setVisibility(View.VISIBLE);
+ _emptyStateView.setVisibility(View.GONE);
+ } else {
+ _slotsView.setVisibility(View.GONE);
+ _emptyStateView.setVisibility(View.VISIBLE);
+ }
}
@Override
@@ -54,6 +70,7 @@ public class GroupManagerActivity extends AegisActivity implements GroupAdapter.
.setPositiveButton(android.R.string.yes, (dialog, whichButton) -> {
_groups.remove(group);
_adapter.removeGroup(group);
+ updateEmptyState();
})
.setNegativeButton(android.R.string.no, null)
.create());
diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java
index 5174ed2b..943e8350 100644
--- a/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java
+++ b/app/src/main/java/com/beemdevelopment/aegis/ui/PreferencesFragment.java
@@ -710,6 +710,8 @@ public class PreferencesFragment extends PreferenceFragmentCompat {
entry.setGroup(null);
}
}
+
+ saveVault();
}
private void onSelectEntriesResult(int resultCode, Intent data) {
diff --git a/app/src/main/res/drawable/ic_layers_black_24dp.xml b/app/src/main/res/drawable/ic_layers_black_24dp.xml
new file mode 100644
index 00000000..84f5bb50
--- /dev/null
+++ b/app/src/main/res/drawable/ic_layers_black_24dp.xml
@@ -0,0 +1,9 @@
+
+
+
diff --git a/app/src/main/res/layout/activity_groups.xml b/app/src/main/res/layout/activity_groups.xml
index 671218ab..b6f0ab12 100644
--- a/app/src/main/res/layout/activity_groups.xml
+++ b/app/src/main/res/layout/activity_groups.xml
@@ -23,9 +23,50 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scrollbars="vertical"/>
-
-
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index b26b2bfe..03a73e31 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -287,6 +287,8 @@
There are no codes to be shown. Start adding entries by tapping the plus sign in the bottom right corner
No entries found
+ There are no groups to be shown. Add groups in the edit screen of an entry
+ No groups found
Done
- %d / %d entry