diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java
index 84e2bce8f6..6934354add 100644
--- a/app/src/main/java/eu/faircode/email/FragmentMessages.java
+++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java
@@ -6394,7 +6394,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
EntityFolder junk = db.folder().getFolderByType(message.account, EntityFolder.JUNK);
if (junk == null)
- return null;
+ throw new IllegalArgumentException(context.getString(R.string.title_no_junk_folder));
EntityOperation.queue(context, message, EntityOperation.MOVE, junk.id);
@@ -6404,7 +6404,6 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
rule.id = db.rule().insertRule(rule);
}
-
db.setTransactionSuccessful();
} finally {
db.endTransaction();
@@ -6417,7 +6416,17 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences.
@Override
protected void onException(Bundle args, Throwable ex) {
- Log.unexpectedError(getParentFragmentManager(), ex);
+ if (ex instanceof IllegalArgumentException) {
+ Snackbar snackbar = Snackbar.make(view, ex.getMessage(), Snackbar.LENGTH_INDEFINITE);
+ snackbar.setAction(R.string.title_fix, new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ startActivity(new Intent(getContext(), ActivitySetup.class));
+ }
+ });
+ snackbar.show();
+ } else
+ Log.unexpectedError(getParentFragmentManager(), ex);
}
}.execute(this, args, "message:junk");
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 6ca0e6d373..4917c22fa5 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -639,6 +639,7 @@
Password missing
Inbox not found
No primary account or no drafts folder
+ There is no spam folder selected for this account
Sending emails requires at least one identity and a drafts folder
This provider uses a proprietary email protocol and therefore it is not possible to use third party email clients
This provider does not support push messages. This will delay reception of new messages and increase battery usage.