From 020cdf95c13ab6a7650317567e12ae8723d0d25c Mon Sep 17 00:00:00 2001 From: M66B Date: Tue, 26 Mar 2019 06:51:21 +0000 Subject: [PATCH] Just for me --- .../eu/faircode/email/FragmentCompose.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index f7c325bfea..1c729ba292 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -1633,8 +1633,25 @@ public class FragmentCompose extends FragmentBase { draft.references = (ref.references == null ? "" : ref.references + " ") + ref.msgid; draft.inreplyto = ref.msgid; draft.thread = ref.thread; - draft.to = (ref.reply == null || ref.reply.length == 0 ? ref.from : ref.reply); - draft.from = ref.to; + + // Special case + String from = null; + String to = null; + String me = Helper.canonicalAddress(Helper.myAddress().getAddress()); + if (ref.from != null && ref.from.length > 0) + from = Helper.canonicalAddress(((InternetAddress) ref.from[0]).getAddress()); + if (ref.to != null && ref.to.length > 0) + to = Helper.canonicalAddress(((InternetAddress) ref.to[0]).getAddress()); + if (from != null && from.equals(me)) { + if (to != null && to.equals(me)) + draft.to = ref.reply; + else + draft.to = ref.to; + draft.from = ref.from; + } else { + draft.to = (ref.reply == null || ref.reply.length == 0 ? ref.from : ref.reply); + draft.from = ref.to; + } if ("reply_all".equals(action)) { List
addresses = new ArrayList<>();