From 78aa98a1715fdaf874f65344c9ab9cb55e39b42d Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 14 Nov 2022 18:28:41 +0100 Subject: [PATCH] Added option to disable clearing selection / quick actions --- .../eu/faircode/email/FragmentMessages.java | 18 +++++++++++---- .../main/res/layout/dialog_quick_actions.xml | 23 +++++++++++++++++++ app/src/main/res/values/strings.xml | 1 + 3 files changed, 37 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 01ce6e74b3..2c09c7cfde 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -1441,14 +1441,16 @@ public class FragmentMessages extends FragmentBase ibBatchSeen.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - onActionSeenSelection(true, null, true); + boolean more_clear = prefs.getBoolean("more_clear", true); + onActionSeenSelection(true, null, more_clear); } }); ibBatchUnseen.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - onActionSeenSelection(false, null, true); + boolean more_clear = prefs.getBoolean("more_clear", true); + onActionSeenSelection(false, null, more_clear); } }); @@ -1469,21 +1471,24 @@ public class FragmentMessages extends FragmentBase ibBatchFlag.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - onActionFlagSelection(true, Color.TRANSPARENT, null, true); + boolean more_clear = prefs.getBoolean("more_clear", true); + onActionFlagSelection(true, Color.TRANSPARENT, null, more_clear); } }); ibLowImportance.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - onActionSetImportanceSelection(EntityMessage.PRIORITIY_LOW, true); + boolean more_clear = prefs.getBoolean("more_clear", true); + onActionSetImportanceSelection(EntityMessage.PRIORITIY_LOW, more_clear); } }); ibHighImportance.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - onActionSetImportanceSelection(EntityMessage.PRIORITIY_HIGH, true); + boolean more_clear = prefs.getBoolean("more_clear", true); + onActionSetImportanceSelection(EntityMessage.PRIORITIY_HIGH, more_clear); } }); @@ -10866,6 +10871,7 @@ public class FragmentMessages extends FragmentBase final CheckBox cbTrash = dview.findViewById(R.id.cbTrash); final CheckBox cbDelete = dview.findViewById(R.id.cbDelete); final CheckBox cbMove = dview.findViewById(R.id.cbMove); + final CheckBox cbClear = dview.findViewById(R.id.cbClear); tvHint.setText(getString(R.string.title_quick_actions_hint, MAX_QUICK_ACTIONS)); cbSeen.setChecked(prefs.getBoolean("more_seen", true)); @@ -10881,6 +10887,7 @@ public class FragmentMessages extends FragmentBase cbTrash.setChecked(prefs.getBoolean("more_trash", true)); cbDelete.setChecked(prefs.getBoolean("more_delete", false)); cbMove.setChecked(prefs.getBoolean("more_move", true)); + cbClear.setChecked(prefs.getBoolean("more_clear", true)); return new AlertDialog.Builder(getContext()) .setView(dview) @@ -10901,6 +10908,7 @@ public class FragmentMessages extends FragmentBase editor.putBoolean("more_trash", cbTrash.isChecked()); editor.putBoolean("more_delete", cbDelete.isChecked()); editor.putBoolean("more_move", cbMove.isChecked()); + editor.putBoolean("more_clear", cbClear.isChecked()); editor.apply(); sendResult(Activity.RESULT_OK); } diff --git a/app/src/main/res/layout/dialog_quick_actions.xml b/app/src/main/res/layout/dialog_quick_actions.xml index 14cc57d688..5b960b5333 100644 --- a/app/src/main/res/layout/dialog_quick_actions.xml +++ b/app/src/main/res/layout/dialog_quick_actions.xml @@ -199,5 +199,28 @@ app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/cbDelete" /> + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 013c18ea71..51af2a677b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1286,6 +1286,7 @@ Low importance High importance Snooze + Clear selection after action Trash Copy …