From 2185596c3db04c22470b2de8adb4e775673d3593 Mon Sep 17 00:00:00 2001 From: M66B Date: Fri, 31 Mar 2023 17:56:29 +0200 Subject: [PATCH] Skip copying identity and folder of rules copied to another account --- .../java/eu/faircode/email/FragmentRule.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/FragmentRule.java b/app/src/main/java/eu/faircode/email/FragmentRule.java index d876df52b1..226876d856 100644 --- a/app/src/main/java/eu/faircode/email/FragmentRule.java +++ b/app/src/main/java/eu/faircode/email/FragmentRule.java @@ -1255,8 +1255,10 @@ public class FragmentRule extends FragmentBase { case EntityRule.TYPE_MOVE: case EntityRule.TYPE_COPY: - long target = jaction.optLong("target", -1); - showFolder(target); + if (copy < 0 || rule.account == account) { + long target = jaction.optLong("target", -1); + showFolder(target); + } if (type == EntityRule.TYPE_MOVE) { etMoveCreate.setText(jaction.optString("create")); cbMoveSeen.setChecked(jaction.optBoolean("seen")); @@ -1265,12 +1267,14 @@ public class FragmentRule extends FragmentBase { break; case EntityRule.TYPE_ANSWER: - long identity = jaction.optLong("identity", -1); - for (int pos = 0; pos < adapterIdentity.getCount(); pos++) - if (adapterIdentity.getItem(pos).id.equals(identity)) { - spIdent.setSelection(pos); - break; - } + if (copy < 0 || rule.account == account) { + long identity = jaction.optLong("identity", -1); + for (int pos = 0; pos < adapterIdentity.getCount(); pos++) + if (adapterIdentity.getItem(pos).id.equals(identity)) { + spIdent.setSelection(pos); + break; + } + } long answer = jaction.optLong("answer", -1); for (int pos = 1; pos < adapterAnswer.getCount(); pos++)