diff --git a/app/src/main/java/com/kunzisoft/keepass/adapters/NodeAdapter.kt b/app/src/main/java/com/kunzisoft/keepass/adapters/NodeAdapter.kt
index 6a8873071..799505e59 100644
--- a/app/src/main/java/com/kunzisoft/keepass/adapters/NodeAdapter.kt
+++ b/app/src/main/java/com/kunzisoft/keepass/adapters/NodeAdapter.kt
@@ -52,7 +52,8 @@ class NodeAdapter
private var ascendingSort: Boolean = true
private var groupsBeforeSort: Boolean = true
private var recycleBinBottomSort: Boolean = true
- private var showUserNames: Boolean = false
+ private var showUserNames: Boolean = true
+ private var showNumberEntries: Boolean = true
private var nodeClickCallback: NodeClickCallback? = null
private var nodeMenuListener: NodeMenuListener? = null
@@ -129,6 +130,7 @@ class NodeAdapter
this.groupsBeforeSort = PreferencesUtil.getGroupsBeforeSort(context)
this.recycleBinBottomSort = PreferencesUtil.getRecycleBinBottomSort(context)
this.showUserNames = PreferencesUtil.showUsernamesListEntries(context)
+ this.showNumberEntries = PreferencesUtil.showNumberEntries(context)
}
/**
@@ -239,7 +241,14 @@ class NodeAdapter
holder.text.textSize = textSize
holder.subText.textSize = subtextSize
if (subNode.type == Type.GROUP) {
- holder.numberChildren?.text = (subNode as GroupVersioned).getChildEntries().size.toString()
+ if (showNumberEntries) {
+ holder.numberChildren?.apply {
+ text = (subNode as GroupVersioned).getChildEntries().size.toString()
+ visibility = View.VISIBLE
+ }
+ } else {
+ holder.numberChildren?.visibility = View.GONE
+ }
}
}
diff --git a/app/src/main/java/com/kunzisoft/keepass/settings/PreferencesUtil.kt b/app/src/main/java/com/kunzisoft/keepass/settings/PreferencesUtil.kt
index 4493a23d8..d07d01aa0 100644
--- a/app/src/main/java/com/kunzisoft/keepass/settings/PreferencesUtil.kt
+++ b/app/src/main/java/com/kunzisoft/keepass/settings/PreferencesUtil.kt
@@ -40,6 +40,12 @@ object PreferencesUtil {
context.resources.getBoolean(R.bool.list_entries_show_username_default))
}
+ fun showNumberEntries(context: Context): Boolean {
+ val prefs = PreferenceManager.getDefaultSharedPreferences(context)
+ return prefs.getBoolean(context.getString(R.string.list_groups_show_number_entries_key),
+ context.resources.getBoolean(R.bool.list_groups_show_number_entries_default))
+ }
+
/**
* Retrieve the text size in SP, verify the integrity of the size stored in preference
*/
diff --git a/app/src/main/res/drawable/background_text_info.xml b/app/src/main/res/drawable/background_text_info.xml
new file mode 100644
index 000000000..981df6281
--- /dev/null
+++ b/app/src/main/res/drawable/background_text_info.xml
@@ -0,0 +1,14 @@
+
+
+ -
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_list_nodes_entry.xml b/app/src/main/res/layout/item_list_nodes_entry.xml
index 58f8f9d8b..68e237a15 100644
--- a/app/src/main/res/layout/item_list_nodes_entry.xml
+++ b/app/src/main/res/layout/item_list_nodes_entry.xml
@@ -20,6 +20,7 @@
@@ -61,6 +62,7 @@
android:id="@+id/node_text"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
+ tools:text="Node Title"
android:lines="1"
android:singleLine="true"
style="@style/KeepassDXStyle.TextAppearance.Default" />
@@ -69,6 +71,7 @@
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_marginTop="-4dp"
+ tools:text="Node SubTitle"
android:lines="1"
android:singleLine="true"
style="@style/KeepassDXStyle.TextAppearance.Secondary" />
diff --git a/app/src/main/res/layout/item_list_nodes_group.xml b/app/src/main/res/layout/item_list_nodes_group.xml
index 5eba1c3ff..06095afb0 100644
--- a/app/src/main/res/layout/item_list_nodes_group.xml
+++ b/app/src/main/res/layout/item_list_nodes_group.xml
@@ -20,6 +20,7 @@
@@ -57,6 +58,17 @@
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/group_arrow"
android:layout_toEndOf="@+id/group_arrow" />
+
@@ -81,6 +94,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
+ tools:text="Node SubTitle"
android:layout_marginTop="-4dp"
android:lines="1"
android:singleLine="true"
diff --git a/app/src/main/res/values/donottranslate.xml b/app/src/main/res/values/donottranslate.xml
index a6044a72b..e072431ef 100644
--- a/app/src/main/res/values/donottranslate.xml
+++ b/app/src/main/res/values/donottranslate.xml
@@ -132,6 +132,8 @@
setting_icon_pack_choose_key
list_entries_show_username_key
true
+ list_groups_show_number_entries_key
+ true
list_size
monospace_font_extra_fields_enable_key
true
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 692f41a03..388c78039 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -113,6 +113,8 @@
Length
Show usernames
Show usernames in entry lists
+ Show number of entries
+ Show the number of entries in a group
Size of list items
Text size in the element list
Loading database…
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 31c54f0b1..7f4fcb79b 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -270,6 +270,13 @@
- ?attr/colorAccent
+
+