diff --git a/app/src/main/java/eu/faircode/email/EmailService.java b/app/src/main/java/eu/faircode/email/EmailService.java index b3194fab72..07ecc35381 100644 --- a/app/src/main/java/eu/faircode/email/EmailService.java +++ b/app/src/main/java/eu/faircode/email/EmailService.java @@ -332,6 +332,10 @@ public class EmailService implements AutoCloseable { properties.put("mail." + protocol + ".ignorebodystructuresize", Boolean.toString(enabled)); } + void setMailFrom(String address) { + properties.put("mail." + protocol + ".from", address); + } + void setSendPartial(boolean enabled) { properties.put("mail." + protocol + ".sendpartial", Boolean.toString(enabled)); } diff --git a/app/src/main/java/eu/faircode/email/EntityIdentity.java b/app/src/main/java/eu/faircode/email/EntityIdentity.java index 8bcd1316af..4899844271 100644 --- a/app/src/main/java/eu/faircode/email/EntityIdentity.java +++ b/app/src/main/java/eu/faircode/email/EntityIdentity.java @@ -27,6 +27,7 @@ import androidx.annotation.NonNull; import androidx.room.ColumnInfo; import androidx.room.Entity; import androidx.room.ForeignKey; +import androidx.room.Ignore; import androidx.room.Index; import androidx.room.PrimaryKey; @@ -62,6 +63,8 @@ public class EntityIdentity { public String name; @NonNull public String email; + @Ignore + public String envelopeFrom; @NonNull public Long account; public String display; diff --git a/app/src/main/java/eu/faircode/email/ServiceSend.java b/app/src/main/java/eu/faircode/email/ServiceSend.java index 775b194286..dfbb83abd8 100644 --- a/app/src/main/java/eu/faircode/email/ServiceSend.java +++ b/app/src/main/java/eu/faircode/email/ServiceSend.java @@ -793,6 +793,8 @@ public class ServiceSend extends ServiceBase implements SharedPreferences.OnShar } else { EmailService iservice = new EmailService(this, ident, EmailService.PURPOSE_USE, debug); try { + if (ident.envelopeFrom != null) + iservice.setMailFrom(ident.envelopeFrom); if (send_partial) iservice.setSendPartial(true); iservice.setUseIp(ident.use_ip, ident.ehlo);