Merge "Don't use SYNCED_MESSAGE_URI for POP3/Drafts/Outbox/Search"
This commit is contained in:
commit
65381f907b
@ -518,6 +518,14 @@ public class Mailbox extends EmailContent implements SyncColumns, MailboxColumns
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean uploadsToServer(Context context) {
|
||||||
|
if (mType == TYPE_DRAFTS || mType == TYPE_OUTBOX || mType == TYPE_SEARCH) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
String protocol = Account.getProtocol(context, mAccountKey);
|
||||||
|
return (!protocol.equals(HostAuth.SCHEME_POP3));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return true if messages in a mailbox of a type can be replied/forwarded.
|
* @return true if messages in a mailbox of a type can be replied/forwarded.
|
||||||
*/
|
*/
|
||||||
|
@ -3332,10 +3332,15 @@ outer:
|
|||||||
}
|
}
|
||||||
|
|
||||||
private int uiUpdateMessage(Uri uri, ContentValues values) {
|
private int uiUpdateMessage(Uri uri, ContentValues values) {
|
||||||
Uri ourUri = convertToEmailProviderUri(uri, Message.SYNCED_CONTENT_URI, true);
|
Context context = getContext();
|
||||||
if (ourUri == null) return 0;
|
|
||||||
Message msg = getMessageFromLastSegment(uri);
|
Message msg = getMessageFromLastSegment(uri);
|
||||||
if (msg == null) return 0;
|
if (msg == null) return 0;
|
||||||
|
Mailbox mailbox = Mailbox.restoreMailboxWithId(context, msg.mMailboxKey);
|
||||||
|
if (mailbox == null) return 0;
|
||||||
|
Uri ourBaseUri =
|
||||||
|
mailbox.uploadsToServer(context) ? Message.SYNCED_CONTENT_URI : Message.CONTENT_URI;
|
||||||
|
Uri ourUri = convertToEmailProviderUri(uri, ourBaseUri, true);
|
||||||
|
if (ourUri == null) return 0;
|
||||||
ContentValues undoValues = new ContentValues();
|
ContentValues undoValues = new ContentValues();
|
||||||
ContentValues ourValues = convertUiMessageValues(msg, values);
|
ContentValues ourValues = convertUiMessageValues(msg, values);
|
||||||
for (String columnName: ourValues.keySet()) {
|
for (String columnName: ourValues.keySet()) {
|
||||||
@ -3352,7 +3357,7 @@ outer:
|
|||||||
}
|
}
|
||||||
ContentProviderOperation op =
|
ContentProviderOperation op =
|
||||||
ContentProviderOperation.newUpdate(convertToEmailProviderUri(
|
ContentProviderOperation.newUpdate(convertToEmailProviderUri(
|
||||||
uri,Message.SYNCED_CONTENT_URI, false))
|
uri, ourBaseUri, false))
|
||||||
.withValues(undoValues)
|
.withValues(undoValues)
|
||||||
.build();
|
.build();
|
||||||
addToSequence(uri, op);
|
addToSequence(uri, op);
|
||||||
|
Loading…
Reference in New Issue
Block a user