From 6a9562937b3d1468ef9d0d15902b879b3c83e632 Mon Sep 17 00:00:00 2001 From: M66B Date: Mon, 9 Sep 2019 12:22:50 +0200 Subject: [PATCH] Added option to select subject ellipsizing --- .../eu/faircode/email/AdapterMessage.java | 15 +++++++---- .../eu/faircode/email/FragmentOptions.java | 2 +- .../email/FragmentOptionsDisplay.java | 26 ++++++++++++++++++- .../res/layout/fragment_options_display.xml | 23 +++++++++++++++- .../res/layout/include_message_compact.xml | 2 +- app/src/main/res/values/strings.xml | 13 ++++++++++ 6 files changed, 72 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 54e9bdfef7..6769ac81c0 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -186,6 +186,8 @@ public class AdapterMessage extends RecyclerView.Adapter adapterView, View view, int position, long id) { + String[] values = getResources().getStringArray(R.array.ellipsizeValues); + prefs.edit().putString("subject_ellipsize", values[position]).apply(); + } + + @Override + public void onNothingSelected(AdapterView parent) { + prefs.edit().remove("subject_ellipsize").apply(); + } + }); + swFlags.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { @@ -361,6 +376,15 @@ public class FragmentOptionsDisplay extends FragmentBase implements SharedPrefer swNameEmail.setChecked(prefs.getBoolean("name_email", false)); swSubjectTop.setChecked(prefs.getBoolean("subject_top", false)); swSubjectItalic.setChecked(prefs.getBoolean("subject_italic", true)); + + String subject_ellipsize = prefs.getString("subject_ellipsize", "middle"); + String[] ellipsizeValues = getResources().getStringArray(R.array.ellipsizeValues); + for (int pos = 0; pos < startupValues.length; pos++) + if (ellipsizeValues[pos].equals(subject_ellipsize)) { + spSubjectEllipsize.setSelection(pos); + break; + } + swFlags.setChecked(prefs.getBoolean("flags", true)); swPreview.setChecked(prefs.getBoolean("preview", false)); swPreviewItalic.setChecked(prefs.getBoolean("preview_italic", true)); diff --git a/app/src/main/res/layout/fragment_options_display.xml b/app/src/main/res/layout/fragment_options_display.xml index 1e95be61ba..ebb7f61057 100644 --- a/app/src/main/res/layout/fragment_options_display.xml +++ b/app/src/main/res/layout/fragment_options_display.xml @@ -205,6 +205,27 @@ app:layout_constraintTop_toBottomOf="@id/swSubjectTop" app:switchPadding="12dp" /> + + + + Show names and email addresses Show subject above sender Show subject in italics + When needed shorten the subject Show stars Show message preview Show message preview in italics @@ -962,6 +963,18 @@ 20 minutes + + start + middle + end + + + + At the start + In the middle + At the end + + @color/red @color/pink