diff --git a/FAQ.md b/FAQ.md index 30cf97d1ad..815e2e1a97 100644 --- a/FAQ.md +++ b/FAQ.md @@ -1954,11 +1954,11 @@ However, not all servers support IMAP keywords and besides that there are no sta
-**(108) Can you add permanently delete messages from any folder?** +**~~(108) Can you add permanently delete messages from any folder?~~** -When you delete messages from a folder the messages will be moved to the trash folder, so you have a chance to restore the messages. -You can permanently delete messages from the trash folder. -Permanently delete messages from other folders would defeat the purpose of the trash folder, so this will not be added. +~~When you delete messages from a folder the messages will be moved to the trash folder, so you have a chance to restore the messages.~~ +~~You can permanently delete messages from the trash folder.~~ +~~Permanently delete messages from other folders would defeat the purpose of the trash folder, so this will not be added.~~
diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 71643c7129..774598d411 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -2412,7 +2412,6 @@ public class AdapterMessage extends RecyclerView.Adapter() { - @Override - protected Void onExecute(Context context, Bundle args) { - long id = args.getLong("id"); - - DB db = DB.getInstance(context); - db.message().deleteMessage(id); - return null; - } - - @Override - protected void onException(Bundle args, Throwable ex) { - Helper.unexpectedError(parentFragment.getFragmentManager(), ex); - } - }.execute(context, owner, args, "message:delete"); + FragmentDialogAsk ask = new FragmentDialogAsk(); + ask.setArguments(aargs); + ask.setTargetFragment(parentFragment, FragmentMessages.REQUEST_MESSAGE_DELETE); + ask.show(parentFragment.getFragmentManager(), "message:delete"); } private void onMenuJunk(final TupleMessageEx message) { diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 23358573fb..dffcc5759e 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -3964,6 +3964,9 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. NotificationManager nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); nm.cancel("send:" + message.identity, 1); } + } else if (message.uid == null) { + db.message().deleteMessage(id); + db.folder().setFolderError(message.folder, null); } else EntityOperation.queue(context, message, EntityOperation.DELETE);