aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java7
-rw-r--r--app/src/main/res/values/strings.xml4
-rw-r--r--app/src/main/res/xml/preference.xml6
3 files changed, 14 insertions, 3 deletions
diff --git a/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java b/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java
index 67fe79a6..b2e06a1b 100644
--- a/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java
+++ b/app/src/main/java/com/zeapo/pwdstore/PasswordFragment.java
@@ -2,9 +2,11 @@ package com.zeapo.pwdstore;
import android.app.Activity;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Bundle;
import android.app.Fragment;
+import android.preference.PreferenceManager;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.internal.widget.AdapterViewCompat;
import android.support.v7.widget.LinearLayoutManager;
@@ -47,6 +49,7 @@ public class PasswordFragment extends Fragment{
private RecyclerView recyclerView;
private RecyclerView.LayoutManager mLayoutManager;
private OnFragmentInteractionListener mListener;
+ private SharedPreferences settings;
/**
* Mandatory empty constructor for the fragment manager to instantiate the
@@ -60,6 +63,7 @@ public class PasswordFragment extends Fragment{
String path = getArguments().getString("Path");
+ settings = PreferenceManager.getDefaultSharedPreferences(getActivity());
passListStack = new Stack<ArrayList<PasswordItem>>();
scrollPosition = new Stack<Integer>();
pathStack = new Stack<File>();
@@ -175,8 +179,9 @@ public class PasswordFragment extends Fragment{
PasswordRepository.getPasswords() :
PasswordRepository.getPasswords(dir);
+ boolean rec = settings.getBoolean("filter_recursively", true);
for (PasswordItem item : passwordItems) {
- if (item.getType() == PasswordItem.TYPE_CATEGORY) {
+ if (item.getType() == PasswordItem.TYPE_CATEGORY && rec) {
recursiveFilter(filter, item.getFile());
}
boolean matches = item.toString().toLowerCase().contains(filter.toLowerCase());
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 2f812e91..86885674 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -109,7 +109,9 @@
<string name="pref_copy_title">Automatically Copy Password</string>
<string name="pref_copy_dialog_title">Automatically copy the password to the clipboard after decryption was successful.</string>
<string name="ssh_key_error_dialog_title">Error while trying to import the ssh-key</string>
- <string name="ssh_key_error_dialog_text">Message : /n</string>
+ <string name="ssh_key_error_dialog_text">Message : \n</string>
+ <string name="pref_recursive_filter">Recursive filtering</string>
+ <string name="pref_recursive_filter_hint">Recursively find passwords of the current directory.</string>
<!-- Misc -->
<string name="dialog_ok">OK</string>
diff --git a/app/src/main/res/xml/preference.xml b/app/src/main/res/xml/preference.xml
index 1ad898a8..4c6e3157 100644
--- a/app/src/main/res/xml/preference.xml
+++ b/app/src/main/res/xml/preference.xml
@@ -22,10 +22,14 @@
<EditTextPreference android:title="@string/pref_password_title"
android:dialogTitle="@string/pref_password_dialog_title"
android:summary="@string/pref_password_dialog_title"
- android:hint="45" android:key="general_show_time" />
+ android:defaultValue="45" android:key="general_show_time"
+ android:inputType="number" />
<CheckBoxPreference android:title="@string/pref_copy_title"
android:dialogTitle="@string/pref_copy_dialog_title"
android:summary="@string/pref_copy_dialog_title"
android:key="copy_on_decrypt" android:defaultValue="true" />
+ <CheckBoxPreference android:title="@string/pref_recursive_filter"
+ android:summary="@string/pref_recursive_filter_hint"
+ android:key="filter_recursively" android:defaultValue="true"/>
</PreferenceCategory>
</PreferenceScreen> \ No newline at end of file