mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Add Recycle Bin setting in code
This commit is contained in:
@@ -40,6 +40,7 @@ import com.keepassdroid.adapters.NodeAdapter;
|
||||
import com.keepassdroid.app.App;
|
||||
import com.keepassdroid.compat.ActivityCompat;
|
||||
import com.keepassdroid.compat.EditorCompat;
|
||||
import com.keepassdroid.database.PwDatabase;
|
||||
import com.keepassdroid.database.PwEntry;
|
||||
import com.keepassdroid.database.PwGroup;
|
||||
import com.keepassdroid.database.PwNode;
|
||||
@@ -165,6 +166,7 @@ public abstract class ListNodesActivity extends LockCloseListActivity
|
||||
editor.putString(getString(R.string.sort_node_key), sortNodeEnum.name());
|
||||
editor.putBoolean(getString(R.string.sort_ascending_key), ascending);
|
||||
editor.putBoolean(getString(R.string.sort_group_before_key), groupsBefore);
|
||||
editor.putBoolean(getString(R.string.sort_recycle_bin_bottom_key), recycleBinBottom);
|
||||
EditorCompat.apply(editor);
|
||||
|
||||
// Tell the adapter to refresh it's list
|
||||
@@ -177,11 +179,27 @@ public abstract class ListNodesActivity extends LockCloseListActivity
|
||||
switch ( item.getItemId() ) {
|
||||
|
||||
case R.id.menu_sort:
|
||||
SortDialogFragment sortDialogFragment =
|
||||
SortDialogFragment.getInstance(
|
||||
PrefsUtil.getListSort(this),
|
||||
PrefsUtil.getAscendingSort(this),
|
||||
PrefsUtil.getGroupsBeforeSort(this));
|
||||
SortDialogFragment sortDialogFragment;
|
||||
|
||||
PwDatabase database = App.getDB().pm;
|
||||
/*
|
||||
// TODO Recycle bin bottom
|
||||
if (database.isRecycleBinAvailable() && database.isRecycleBinEnable()) {
|
||||
sortDialogFragment =
|
||||
SortDialogFragment.getInstance(
|
||||
PrefsUtil.getListSort(this),
|
||||
PrefsUtil.getAscendingSort(this),
|
||||
PrefsUtil.getGroupsBeforeSort(this),
|
||||
PrefsUtil.getRecycleBinBottomSort(this));
|
||||
} else {
|
||||
*/
|
||||
sortDialogFragment =
|
||||
SortDialogFragment.getInstance(
|
||||
PrefsUtil.getListSort(this),
|
||||
PrefsUtil.getAscendingSort(this),
|
||||
PrefsUtil.getGroupsBeforeSort(this));
|
||||
//}
|
||||
|
||||
sortDialogFragment.show(getSupportFragmentManager(), "sortDialog");
|
||||
return true;
|
||||
|
||||
@@ -278,12 +296,15 @@ public abstract class ListNodesActivity extends LockCloseListActivity
|
||||
if ( mSuccess) {
|
||||
mAdapter.removeNode(pwNode);
|
||||
PwGroup parent = pwNode.getParent();
|
||||
PwGroup recycleBin = App.getDB().pm.getRecycleBin();
|
||||
// Add trash if it doesn't exists
|
||||
if (parent.equals(recycleBin)
|
||||
&& mCurrentGroup.getParent() == null
|
||||
&& !mCurrentGroup.equals(recycleBin)) {
|
||||
mAdapter.addNode(parent);
|
||||
PwDatabase database = App.getDB().pm;
|
||||
if (database.isRecycleBinAvailable() && database.isRecycleBinEnable()) {
|
||||
PwGroup recycleBin = database.getRecycleBin();
|
||||
// Add trash if it doesn't exists
|
||||
if (parent.equals(recycleBin)
|
||||
&& mCurrentGroup.getParent() == null
|
||||
&& !mCurrentGroup.equals(recycleBin)) {
|
||||
mAdapter.addNode(parent);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
mHandler.post(new UIToastTask(ListNodesActivity.this, "Unrecoverable error: " + mMessage));
|
||||
|
||||
@@ -108,6 +108,12 @@ public class PrefsUtil {
|
||||
ctx.getResources().getBoolean(R.bool.sort_ascending_default));
|
||||
}
|
||||
|
||||
public static boolean getRecycleBinBottomSort(Context ctx) {
|
||||
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctx);
|
||||
return prefs.getBoolean(ctx.getString(R.string.sort_recycle_bin_bottom_key),
|
||||
ctx.getResources().getBoolean(R.bool.sort_recycle_bin_bottom_default));
|
||||
}
|
||||
|
||||
public static boolean isPasswordMask(Context ctx) {
|
||||
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(ctx);
|
||||
return prefs.getBoolean(ctx.getString(R.string.maskpass_key),
|
||||
|
||||
@@ -51,6 +51,7 @@
|
||||
<string name="sort_node_key" translatable="false">sort_node_key</string>
|
||||
<string name="sort_group_before_key" translatable="false">sort_group_before_key</string>
|
||||
<string name="sort_ascending_key" translatable="false">sort_ascending_key</string>
|
||||
<string name="sort_recycle_bin_bottom_key" translatable="false">sort_recycle_bin_bottom_key</string>
|
||||
<string name="timeout_key" translatable="false">timeout_key</string>
|
||||
<string name="saf_key" translatable="false">storage_access_framework_key</string>
|
||||
<integer name="roundsFix_default" translatable="false">100000</integer>
|
||||
@@ -73,6 +74,7 @@
|
||||
<bool name="full_file_path_enable_default" translatable="true">false</bool>
|
||||
<bool name="sort_group_before_default" translatable="true">true</bool>
|
||||
<bool name="sort_ascending_default" translatable="true">true</bool>
|
||||
<bool name="sort_recycle_bin_bottom_default" translatable="true">true</bool>
|
||||
|
||||
<string name="clipboard_timeout_default" translatable="false">300000</string>
|
||||
<string-array name="clipboard_timeout_values">
|
||||
|
||||
Reference in New Issue
Block a user