Simplified looking up sent messages

pull/213/head
M66B 1 year ago
parent 829694a64e
commit e67efaae3e

@ -2155,18 +2155,24 @@ class Core {
throw new IllegalArgumentException("exists without msgid"); throw new IllegalArgumentException("exists without msgid");
// Search for message // Search for message
Message[] imessages = ifolder.search(new MessageIDTerm(message.msgid)); Message[] imessages = (account.isOutlook())
if (imessages == null || imessages.length == 0) ? ifolder.search(new HeaderTerm("X-Microsoft-Original-Message-ID", message.msgid))
try { : ifolder.search(new MessageIDTerm(message.msgid));
// Needed for Outlook
imessages = ifolder.search( // Fallback
new AndTerm( if (false)
new SentDateTerm(ComparisonTerm.GE, new Date()), if (imessages == null || imessages.length == 0)
new HeaderTerm(MessageHelper.HEADER_CORRELATION_ID, message.msgid))); try {
} catch (Throwable ex) { // Needed for Outlook
Log.e(ex); imessages = ifolder.search(
// Seznam: Jakarta Mail Exception: java.io.IOException: Connection dropped by server? new AndTerm(
} new SentDateTerm(ComparisonTerm.GE, new Date()),
new HeaderTerm(MessageHelper.HEADER_CORRELATION_ID, message.msgid)));
} catch (Throwable ex) {
Log.e(ex);
// iCloud: NO [UNAVAILABLE] Unexpected exception
// Seznam: Jakarta Mail Exception: java.io.IOException: Connection dropped by server?
}
// Some email servers are slow with adding sent messages // Some email servers are slow with adding sent messages
if (retry) if (retry)

@ -208,6 +208,10 @@ public class EntityAccount extends EntityOrder implements Serializable {
return "imap.aol.com".equalsIgnoreCase(host); return "imap.aol.com".equalsIgnoreCase(host);
} }
boolean isICloud() {
return "imap.mail.me.com".equalsIgnoreCase(host);
}
boolean isTransient(Context context) { boolean isTransient(Context context) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
boolean enabled = prefs.getBoolean("enabled", true); boolean enabled = prefs.getBoolean("enabled", true);

Loading…
Cancel
Save