diff --git a/app/src/main/java/eu/faircode/email/DaoMessage.java b/app/src/main/java/eu/faircode/email/DaoMessage.java index 918834bcd8..ffb51721ef 100644 --- a/app/src/main/java/eu/faircode/email/DaoMessage.java +++ b/app/src/main/java/eu/faircode/email/DaoMessage.java @@ -795,6 +795,9 @@ public interface DaoMessage { @Query("UPDATE message SET fts = :fts WHERE id = :id AND NOT (fts IS :fts)") int setMessageFts(long id, boolean fts); + @Query("UPDATE message SET `from` = :from WHERE id = :id AND NOT (`from` IS :from)") + int setMessageFrom(long id, String from); + @Query("UPDATE message SET `to` = :to WHERE id = :id AND NOT (`to` IS :to)") int setMessageTo(long id, String to); diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index 72ce9b0bfb..de55fce270 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -6506,7 +6506,9 @@ public class FragmentCompose extends FragmentBase { EntityIdentity selected = getIdentity(context, aid, data.identities, data.draft.from, data.draft.to); if (selected != null) { data.draft.identity = selected.id; + data.draft.from = new InternetAddress[]{new InternetAddress(selected.email, selected.name, StandardCharsets.UTF_8.name())}; db.message().setMessageIdentity(data.draft.id, data.draft.identity); + db.message().setMessageFrom(data.draft.id, DB.Converters.encodeAddresses(data.draft.from)); EntityLog.log(context, "Selected external identity=" + selected.email); } }