Notification delete with expunge off

pull/194/merge
M66B 4 years ago
parent fa8e8ee011
commit c2a56ab69b

@ -4859,6 +4859,7 @@ class Core {
boolean light = prefs.getBoolean("light", false); boolean light = prefs.getBoolean("light", false);
String sound = prefs.getString("sound", null); String sound = prefs.getString("sound", null);
boolean alert_once = prefs.getBoolean("alert_once", true); boolean alert_once = prefs.getBoolean("alert_once", true);
boolean perform_expunge = prefs.getBoolean("perform_expunge", true);
// Get contact info // Get contact info
Map<Long, Address[]> messageFrom = new HashMap<>(); Map<Long, Address[]> messageFrom = new HashMap<>();
@ -5138,6 +5139,7 @@ class Core {
List<NotificationCompat.Action> wactions = new ArrayList<>(); List<NotificationCompat.Action> wactions = new ArrayList<>();
if (notify_trash && if (notify_trash &&
perform_expunge &&
message.accountProtocol == EntityAccount.TYPE_IMAP && message.accountProtocol == EntityAccount.TYPE_IMAP &&
db.folder().getFolderByType(message.account, EntityFolder.TRASH) != null) { db.folder().getFolderByType(message.account, EntityFolder.TRASH) != null) {
Intent trash = new Intent(context, ServiceUI.class) Intent trash = new Intent(context, ServiceUI.class)
@ -5158,8 +5160,8 @@ class Core {
} }
if (notify_trash && if (notify_trash &&
message.accountProtocol == EntityAccount.TYPE_POP && ((message.accountProtocol == EntityAccount.TYPE_POP && message.accountLeaveDeleted) ||
message.accountLeaveDeleted) { (message.accountProtocol == EntityAccount.TYPE_IMAP && !perform_expunge))) {
Intent delete = new Intent(context, ServiceUI.class) Intent delete = new Intent(context, ServiceUI.class)
.setAction("delete:" + message.id) .setAction("delete:" + message.id)
.putExtra("group", group); .putExtra("group", group);

@ -412,6 +412,10 @@ public class EntityOperation {
} else { } else {
message.ui_deleted = !message.ui_deleted; message.ui_deleted = !message.ui_deleted;
db.message().setMessageUiDeleted(message.id, message.ui_deleted); db.message().setMessageUiDeleted(message.id, message.ui_deleted);
if (message.ui_deleted) {
message.ui_ignored = true;
db.message().setMessageUiIgnored(message.id, message.ui_ignored);
}
} }
/* /*
if (message.hash != null) { if (message.hash != null) {

Loading…
Cancel
Save