From de096500fcb5f7760f3b9c7747f32c1aba191c6b Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 2 Nov 2022 14:39:27 +0100 Subject: [PATCH] Allow default sign if not auto encrypt --- .../eu/faircode/email/FragmentCompose.java | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index cc3de46819..28d64a6859 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -1576,18 +1576,8 @@ public class FragmentCompose extends FragmentBase { if (identity == null) return draft.ui_encrypt; - if (encrypt_default || identity.encrypt_default) - draft.ui_encrypt = (identity.encrypt == 0 - ? EntityMessage.PGP_SIGNENCRYPT - : EntityMessage.SMIME_SIGNENCRYPT); - else if (sign_default || identity.sign_default) - draft.ui_encrypt = (identity.encrypt == 0 - ? EntityMessage.PGP_SIGNONLY - : EntityMessage.SMIME_SIGNONLY); - else + if (encrypt_auto) { draft.ui_encrypt = null; - - if (encrypt_auto) try { InternetAddress[] to = MessageHelper.parseAddresses(context, args.getString("to")); InternetAddress[] cc = MessageHelper.parseAddresses(context, args.getString("cc")); @@ -1605,11 +1595,23 @@ public class FragmentCompose extends FragmentBase { draft.ui_encrypt = EntityMessage.PGP_SIGNENCRYPT; else if (identity.encrypt == 1 && SmimeHelper.hasSmimeKey(context, recipients, true)) draft.ui_encrypt = EntityMessage.SMIME_SIGNENCRYPT; - else - draft.ui_encrypt = null; } catch (Throwable ex) { Log.w(ex); } + } + + if (!encrypt_auto || draft.ui_encrypt == null) { + if (encrypt_default || identity.encrypt_default) + draft.ui_encrypt = (identity.encrypt == 0 + ? EntityMessage.PGP_SIGNENCRYPT + : EntityMessage.SMIME_SIGNENCRYPT); + else if (sign_default || identity.sign_default) + draft.ui_encrypt = (identity.encrypt == 0 + ? EntityMessage.PGP_SIGNONLY + : EntityMessage.SMIME_SIGNONLY); + else + draft.ui_encrypt = null; + } db.message().setMessageUiEncrypt(draft.id, draft.ui_encrypt);