diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java
index 293f47cf4b..d2ac77689f 100644
--- a/app/src/main/java/eu/faircode/email/FragmentMessages.java
+++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java
@@ -307,6 +307,7 @@ public class FragmentMessages extends FragmentBase
private ImageButton ibBatchFlag;
private ImageButton ibBatchFlagColor;
private ImageButton ibLowImportance;
+ private ImageButton ibNormalImportance;
private ImageButton ibHighImportance;
private ImageButton ibInbox;
private ImageButton ibArchive;
@@ -604,6 +605,7 @@ public class FragmentMessages extends FragmentBase
ibBatchFlag = view.findViewById(R.id.ibBatchFlag);
ibBatchFlagColor = view.findViewById(R.id.ibBatchFlagColor);
ibLowImportance = view.findViewById(R.id.ibLowImportance);
+ ibNormalImportance = view.findViewById(R.id.ibNormalImportance);
ibHighImportance = view.findViewById(R.id.ibHighImportance);
ibInbox = view.findViewById(R.id.ibInbox);
ibArchive = view.findViewById(R.id.ibArchive);
@@ -1512,6 +1514,14 @@ public class FragmentMessages extends FragmentBase
}
});
+ ibNormalImportance.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ boolean more_clear = prefs.getBoolean("more_clear", true);
+ onActionSetImportanceSelection(EntityMessage.PRIORITIY_NORMAL, more_clear);
+ }
+ });
+
ibHighImportance.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -6272,6 +6282,7 @@ public class FragmentMessages extends FragmentBase
boolean more_flag = prefs.getBoolean("more_flag", false);
boolean more_flag_color = prefs.getBoolean("more_flag_color", false);
boolean more_importance_high = prefs.getBoolean("more_importance_high", false);
+ boolean more_importance_normal = prefs.getBoolean("more_importance_normal", false);
boolean more_importance_low = prefs.getBoolean("more_importance_low", false);
boolean more_inbox = prefs.getBoolean("more_inbox", true);
boolean more_archive = prefs.getBoolean("more_archive", true);
@@ -6320,6 +6331,11 @@ public class FragmentMessages extends FragmentBase
if (importance_high)
count++;
+ boolean importance_normal = (more_importance_normal && count < MAX_QUICK_ACTIONS &&
+ !EntityMessage.PRIORITIY_NORMAL.equals(result.importance));
+ if (importance_normal)
+ count++;
+
boolean importance_low = (more_importance_low && count < MAX_QUICK_ACTIONS &&
!EntityMessage.PRIORITIY_LOW.equals(result.importance));
if (importance_low)
@@ -6358,6 +6374,7 @@ public class FragmentMessages extends FragmentBase
ibBatchFlag.setVisibility(flag ? View.VISIBLE : View.GONE);
ibBatchFlagColor.setVisibility(flag_color ? View.VISIBLE : View.GONE);
ibLowImportance.setVisibility(importance_low ? View.VISIBLE : View.GONE);
+ ibNormalImportance.setVisibility(importance_normal ? View.VISIBLE : View.GONE);
ibHighImportance.setVisibility(importance_high ? View.VISIBLE : View.GONE);
ibInbox.setVisibility(inbox ? View.VISIBLE : View.GONE);
ibArchive.setVisibility(archive ? View.VISIBLE : View.GONE);
@@ -10935,6 +10952,7 @@ public class FragmentMessages extends FragmentBase
final CheckBox cbFlag = dview.findViewById(R.id.cbFlag);
final CheckBox cbFlagColor = dview.findViewById(R.id.cbFlagColor);
final CheckBox cbImportanceLow = dview.findViewById(R.id.cbImportanceLow);
+ final CheckBox cbImportanceNormal = dview.findViewById(R.id.cbImportanceNormal);
final CheckBox cbImportanceHigh = dview.findViewById(R.id.cbImportanceHigh);
final CheckBox cbInbox = dview.findViewById(R.id.cbInbox);
final CheckBox cbArchive = dview.findViewById(R.id.cbArchive);
@@ -10952,6 +10970,7 @@ public class FragmentMessages extends FragmentBase
cbFlag.setChecked(prefs.getBoolean("more_flag", false));
cbFlagColor.setChecked(prefs.getBoolean("more_flag_color", false));
cbImportanceLow.setChecked(prefs.getBoolean("more_importance_low", false));
+ cbImportanceNormal.setChecked(prefs.getBoolean("more_importance_normal", false));
cbImportanceHigh.setChecked(prefs.getBoolean("more_importance_high", false));
cbInbox.setChecked(prefs.getBoolean("more_inbox", true));
cbArchive.setChecked(prefs.getBoolean("more_archive", true));
@@ -10974,6 +10993,7 @@ public class FragmentMessages extends FragmentBase
editor.putBoolean("more_flag", cbFlag.isChecked());
editor.putBoolean("more_flag_color", cbFlagColor.isChecked());
editor.putBoolean("more_importance_low", cbImportanceLow.isChecked());
+ editor.putBoolean("more_importance_normal", cbImportanceNormal.isChecked());
editor.putBoolean("more_importance_high", cbImportanceHigh.isChecked());
editor.putBoolean("more_inbox", cbInbox.isChecked());
editor.putBoolean("more_archive", cbArchive.isChecked());
diff --git a/app/src/main/res/layout/dialog_quick_actions.xml b/app/src/main/res/layout/dialog_quick_actions.xml
index 013205282d..c5bf1565a0 100644
--- a/app/src/main/res/layout/dialog_quick_actions.xml
+++ b/app/src/main/res/layout/dialog_quick_actions.xml
@@ -122,6 +122,19 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/cbFlagColor" />
+
+
+ app:layout_constraintTop_toBottomOf="@id/cbImportanceNormal" />
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 8ee155ea7c..733dee0a67 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1300,6 +1300,7 @@
Select actions
Up to %1$d actions will be shown
Low importance
+ Normal importance
High importance
Snooze
Clear selection after action