diff --git a/app/src/main/java/eu/faircode/email/AdapterRule.java b/app/src/main/java/eu/faircode/email/AdapterRule.java index 60040f8e8b..f1530fee29 100644 --- a/app/src/main/java/eu/faircode/email/AdapterRule.java +++ b/app/src/main/java/eu/faircode/email/AdapterRule.java @@ -48,8 +48,6 @@ import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; -import com.google.android.material.snackbar.Snackbar; - import org.json.JSONException; import org.json.JSONObject; @@ -298,6 +296,7 @@ public class AdapterRule extends RecyclerView.Adapter { long id = args.getLong("id"); DB db = DB.getInstance(context); + EntityRule rule = db.rule().getRule(id); if (rule == null) return 0; @@ -307,9 +306,11 @@ public class AdapterRule extends RecyclerView.Adapter { if (jheader != null) throw new IllegalArgumentException(context.getString(R.string.title_rule_no_headers)); + List ids = db.message().getMessageIdsByFolder(rule.folder); + if (ids == null) + return 0; + int applied = 0; - List ids = - db.message().getMessageIdsByFolder(rule.folder); for (long mid : ids) try { db.beginTransaction(); @@ -335,20 +336,14 @@ public class AdapterRule extends RecyclerView.Adapter { @Override protected void onExecuted(Bundle args, Integer applied) { - Snackbar.make( - parentFragment.getView(), - context.getString(R.string.title_rule_applied, applied), Snackbar.LENGTH_LONG) - .setGestureInsetBottomIgnored(true).show(); + ToastEx.makeText(context, + context.getString(R.string.title_rule_applied, applied), + Toast.LENGTH_LONG).show(); } @Override protected void onException(Bundle args, Throwable ex) { - if (ex instanceof IllegalArgumentException) - Snackbar.make( - parentFragment.getView(), ex.getMessage(), Snackbar.LENGTH_LONG) - .setGestureInsetBottomIgnored(true).show(); - else - Log.unexpectedError(parentFragment.getParentFragmentManager(), ex, false); + Log.unexpectedError(parentFragment.getParentFragmentManager(), ex, false); } }.execute(context, owner, args, "rule:execute"); }