diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index edae725723..eadb9beeab 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -2996,7 +2996,8 @@ class Core { if (message.ui_hide && message.ui_snoozed == null && (message.ui_busy == null || message.ui_busy < new Date().getTime()) && - db.operation().getOperationCount(folder.id, message.id) == 0) { + db.operation().getOperationCount(folder.id, message.id) == 0 && + db.operation().getOperationCount(folder.id, EntityOperation.PURGE) == 0) { update = true; message.ui_hide = false; Log.i(folder.name + " updated id=" + message.id + " uid=" + message.uid + " unhide"); diff --git a/app/src/main/java/eu/faircode/email/DaoOperation.java b/app/src/main/java/eu/faircode/email/DaoOperation.java index 25daae9a6c..82f9aedd23 100644 --- a/app/src/main/java/eu/faircode/email/DaoOperation.java +++ b/app/src/main/java/eu/faircode/email/DaoOperation.java @@ -34,7 +34,6 @@ public interface DaoOperation { " WHEN operation.name = '" + EntityOperation.ATTACHMENT + "' THEN -3" + " WHEN operation.name = '" + EntityOperation.HEADERS + "' THEN -2" + " WHEN operation.name = '" + EntityOperation.RAW + "' THEN -2" + - " WHEN operation.name = '" + EntityOperation.PURGE + "' THEN -2" + " WHEN operation.name = '" + EntityOperation.SYNC + "' AND folder.account IS NULL THEN -1" + // Outbox " WHEN operation.name = '" + EntityOperation.SYNC + "' AND folder.account IS NOT NULL THEN 1" + // Other operations: add, delete, seen, answered, flag, keyword, label, subscribe, send @@ -42,6 +41,7 @@ public interface DaoOperation { " WHEN operation.name = '" + EntityOperation.EXISTS + "' THEN 3" + " WHEN operation.name = '" + EntityOperation.MOVE + "' THEN 4" + " WHEN operation.name = '" + EntityOperation.COPY + "' THEN 4" + + " WHEN operation.name = '" + EntityOperation.PURGE + "' THEN 5" + " ELSE 0" + " END"; diff --git a/app/src/main/java/eu/faircode/email/FragmentFolders.java b/app/src/main/java/eu/faircode/email/FragmentFolders.java index 1ea5f69580..7bf1c37a94 100644 --- a/app/src/main/java/eu/faircode/email/FragmentFolders.java +++ b/app/src/main/java/eu/faircode/email/FragmentFolders.java @@ -742,7 +742,7 @@ public class FragmentFolders extends FragmentBase { db.endTransaction(); } - ServiceSynchronize.eval(context, "delete"); + ServiceSynchronize.eval(context, "purge"); return null; } diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 061e9e81e2..2882dea2d7 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -7343,7 +7343,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. db.endTransaction(); } - ServiceSynchronize.eval(context, "delete"); + ServiceSynchronize.eval(context, "purge"); return null; }