diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 7da5a29f74..5326f81fce 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -4850,6 +4850,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. } } catch (CMSException ex) { Log.w(ex); + args.putString("reason", ex.getMessage()); } } if (result != null) @@ -4984,9 +4985,15 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. boolean valid = args.getBoolean("valid"); final ArrayList trace = args.getStringArrayList("trace"); - if (cert == null) - Snackbar.make(view, R.string.title_signature_invalid, Snackbar.LENGTH_LONG).show(); - else + if (cert == null) { + String message; + String reason = args.getString("reason"); + if (TextUtils.isEmpty(reason)) + message = getString(R.string.title_signature_invalid); + else + message = getString(R.string.title_signature_invalid_reason, reason); + Snackbar.make(view, message, Snackbar.LENGTH_LONG).show(); + } else try { EntityCertificate record = EntityCertificate.from(cert, null); diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 361156b0cd..8b803c393d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -789,6 +789,7 @@ Message signature valid Message signature valid but not confirmed Message signature invalid + Message signature invalid: %1$s Certificate chain invalid Sender\'s address Signature\'s address