diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 46ed5db2f9..4dbf1081d0 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -3633,11 +3633,18 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. return true; } - int count = (values.containsKey("expanded") ? values.get("expanded").size() : 0); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getContext()); - boolean collapse_single = prefs.getBoolean("collapse_single", false); boolean collapse_multiple = prefs.getBoolean("collapse_multiple", true); - if ((collapse_single && count == 1) || (collapse_multiple && count > 1)) { + + int count = 0; + for (int i = 0; i < adapter.getItemCount(); i++) { + TupleMessageEx message = adapter.getItemAtPosition(i); + if (message != null && !message.duplicate) + count++; + } + + int expanded = (values.containsKey("expanded") ? values.get("expanded").size() : 0); + if (collapse_multiple && expanded > 0 && count > 1) { values.get("expanded").clear(); updateExpanded(); adapter.notifyDataSetChanged(); diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java b/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java index a135c84dbb..b781923501 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsBehavior.java @@ -50,7 +50,6 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe private SwitchCompat swExpandOne; private SwitchCompat swAutoClose; private Spinner spOnClose; - private SwitchCompat swCollapseSingle; private SwitchCompat swCollapseMultiple; private SwitchCompat swAutoRead; private SwitchCompat swAutoUnflag; @@ -59,7 +58,7 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe private final static String[] RESET_OPTIONS = new String[]{ "pull", "autoscroll", "doubletap", "swipenav", "reversed", - "autoexpand", "expand_all", "expand_one", "collapse_single", "collapse_multiple", + "autoexpand", "expand_all", "expand_one", "collapse_multiple", "autoclose", "onclose", "autoread", "autounflag", "automove", "discard_delete" }; @@ -81,7 +80,6 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe swAutoExpand = view.findViewById(R.id.swAutoExpand); swExpandAll = view.findViewById(R.id.swExpandAll); swExpandOne = view.findViewById(R.id.swExpandOne); - swCollapseSingle = view.findViewById(R.id.swCollapseSingle); swCollapseMultiple = view.findViewById(R.id.swCollapseMultiple); swAutoClose = view.findViewById(R.id.swAutoClose); spOnClose = view.findViewById(R.id.spOnClose); @@ -155,13 +153,6 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe } }); - swCollapseSingle.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { - @Override - public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { - prefs.edit().putBoolean("collapse_single", checked).apply(); - } - }); - swCollapseMultiple.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { @@ -278,7 +269,6 @@ public class FragmentOptionsBehavior extends FragmentBase implements SharedPrefe swExpandAll.setChecked(prefs.getBoolean("expand_all", false)); swExpandOne.setChecked(prefs.getBoolean("expand_one", true)); swExpandOne.setEnabled(!swExpandAll.isChecked()); - swCollapseSingle.setChecked(prefs.getBoolean("collapse_single", false)); swCollapseMultiple.setChecked(prefs.getBoolean("collapse_multiple", true)); swCollapseMultiple.setEnabled(!swExpandOne.isChecked() || swExpandAll.isChecked()); diff --git a/app/src/main/res/layout/fragment_options_behavior.xml b/app/src/main/res/layout/fragment_options_behavior.xml index d6600059c1..0027f88ae8 100644 --- a/app/src/main/res/layout/fragment_options_behavior.xml +++ b/app/src/main/res/layout/fragment_options_behavior.xml @@ -115,17 +115,6 @@ app:layout_constraintTop_toBottomOf="@id/swExpandAll" app:switchPadding="12dp" /> - - Automatically expand messages Automatically expand all read messages Expand only one message at a time - Collapse single message in a conversation on \'back\' - Collapse multiple messages in a conversation on \'back\' + Collapse messages in a conversation with multiple messages on \'back\' Automatically close conversations On closing a conversation Automatically mark messages read on moving messages