From 53e6b8625b53e11ccf38d49e3f555bf4ae10ebb6 Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 7 Jan 2023 18:44:37 +0100 Subject: [PATCH] Added option to disable auto plain text only reply --- .../java/eu/faircode/email/FragmentCompose.java | 3 ++- .../eu/faircode/email/FragmentOptionsSend.java | 13 ++++++++++++- app/src/main/res/layout/fragment_options_send.xml | 14 +++++++++++++- app/src/main/res/values/strings.xml | 1 + 4 files changed, 28 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index e662e3e54c..a56b7b7c11 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -4630,6 +4630,7 @@ public class FragmentCompose extends FragmentBase { SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); boolean plain_only = prefs.getBoolean("plain_only", false); + boolean plain_only_reply = prefs.getBoolean("plain_only_reply", true); boolean resize_reply = prefs.getBoolean("resize_reply", true); boolean sign_default = prefs.getBoolean("sign_default", false); boolean encrypt_default = prefs.getBoolean("encrypt_default", false); @@ -5074,7 +5075,7 @@ public class FragmentCompose extends FragmentBase { data.draft.sensitivity = ref.sensitivity; // Plain-only - if (ref.isPlainOnly()) + if (plain_only_reply && ref.isPlainOnly()) data.draft.plain_only = 1; // Encryption diff --git a/app/src/main/java/eu/faircode/email/FragmentOptionsSend.java b/app/src/main/java/eu/faircode/email/FragmentOptionsSend.java index fa8380ed3e..646a6a1024 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOptionsSend.java +++ b/app/src/main/java/eu/faircode/email/FragmentOptionsSend.java @@ -103,6 +103,7 @@ public class FragmentOptionsSend extends FragmentBase implements SharedPreferenc private SwitchCompat swAttachNew; private SwitchCompat swAutoLink; private SwitchCompat swPlainOnly; + private SwitchCompat swPlainOnlyReply; private SwitchCompat swFormatFlowed; private SwitchCompat swUsenetSignature; private SwitchCompat swRemoveSignatures; @@ -126,7 +127,8 @@ public class FragmentOptionsSend extends FragmentBase implements SharedPreferenc "prefix_once", "prefix_count", "alt_re", "alt_fwd", "separate_reply", "extended_reply", "write_below", "quote_reply", "quote_limit", "resize_reply", "signature_location", "signature_new", "signature_reply", "signature_reply_once", "signature_forward", - "attach_new", "auto_link", "plain_only", "format_flowed", "usenet_signature", "remove_signatures", + "attach_new", "auto_link", "plain_only", "plain_only_reply", + "format_flowed", "usenet_signature", "remove_signatures", "receipt_default", "receipt_type", "receipt_legacy", "forward_new", "lookup_mx", "reply_move", "reply_move_inbox" @@ -183,6 +185,7 @@ public class FragmentOptionsSend extends FragmentBase implements SharedPreferenc swAttachNew = view.findViewById(R.id.swAttachNew); swAutoLink = view.findViewById(R.id.swAutoLink); swPlainOnly = view.findViewById(R.id.swPlainOnly); + swPlainOnlyReply = view.findViewById(R.id.swPlainOnlyReply); swFormatFlowed = view.findViewById(R.id.swFormatFlowed); swUsenetSignature = view.findViewById(R.id.swUsenetSignature); swRemoveSignatures = view.findViewById(R.id.swRemoveSignatures); @@ -558,6 +561,13 @@ public class FragmentOptionsSend extends FragmentBase implements SharedPreferenc } }); + swPlainOnlyReply.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { + prefs.edit().putBoolean("plain_only_reply", checked).apply(); + } + }); + swFormatFlowed.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton compoundButton, boolean checked) { @@ -762,6 +772,7 @@ public class FragmentOptionsSend extends FragmentBase implements SharedPreferenc swAttachNew.setChecked(prefs.getBoolean("attach_new", true)); swAutoLink.setChecked(prefs.getBoolean("auto_link", false)); swPlainOnly.setChecked(prefs.getBoolean("plain_only", false)); + swPlainOnlyReply.setChecked(prefs.getBoolean("plain_only_reply", true)); swFormatFlowed.setChecked(prefs.getBoolean("format_flowed", false)); swUsenetSignature.setChecked(prefs.getBoolean("usenet_signature", false)); swRemoveSignatures.setChecked(prefs.getBoolean("remove_signatures", false)); diff --git a/app/src/main/res/layout/fragment_options_send.xml b/app/src/main/res/layout/fragment_options_send.xml index 2661d7583a..24fc3f53bc 100644 --- a/app/src/main/res/layout/fragment_options_send.xml +++ b/app/src/main/res/layout/fragment_options_send.xml @@ -738,6 +738,18 @@ app:layout_constraintTop_toBottomOf="@id/swAutoLink" app:switchPadding="12dp" /> + + Automatically create links Send plain text only by default + Automatically plain text only when replying to a plain text only message \'format flowed\' for plain text Follow Usenet signature convention Remove recognized signatures