diff --git a/app/src/main/java/eu/faircode/email/Core.java b/app/src/main/java/eu/faircode/email/Core.java index f1e7e205c8..e75820b8bf 100644 --- a/app/src/main/java/eu/faircode/email/Core.java +++ b/app/src/main/java/eu/faircode/email/Core.java @@ -3695,11 +3695,13 @@ class Core { if (!(message.ui_seen || message.ui_ignored || message.ui_hide)) { // This assumes the messages are properly ordered - if (groupMessages.get(group).size() < MAX_NOTIFICATION_COUNT) - groupMessages.get(group).add(message); - else { - if (!message.ui_ignored) - db.message().setMessageUiIgnored(message.id, true); + groupMessages.get(group).add(message); + + for (int i = groupMessages.get(group).size() - 1; i >= MAX_NOTIFICATION_COUNT; i--) { + TupleMessageEx overflow = groupMessages.get(group).remove(i); + Log.i("Notify overflow=" + overflow.id); + if (!overflow.ui_ignored) + db.message().setMessageUiIgnored(overflow.id, true); } } }