diff --git a/app/src/main/java/eu/faircode/email/FragmentContacts.java b/app/src/main/java/eu/faircode/email/FragmentContacts.java index d602b7a97d..67380a1f70 100644 --- a/app/src/main/java/eu/faircode/email/FragmentContacts.java +++ b/app/src/main/java/eu/faircode/email/FragmentContacts.java @@ -83,6 +83,14 @@ public class FragmentContacts extends FragmentBase { private static final int REQUEST_EXPORT = 3; static final int REQUEST_EDIT_NAME = 4; + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + Bundle args = getArguments(); + this.junk = (args != null && args.getBoolean("junk")); + } + @Override @Nullable public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogJunk.java b/app/src/main/java/eu/faircode/email/FragmentDialogJunk.java index 3359d10872..b1b69ecb50 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogJunk.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogJunk.java @@ -82,6 +82,8 @@ public class FragmentDialogJunk extends FragmentDialogBase { final TextView tvBlocklist = view.findViewById(R.id.tvBlocklist); final ImageButton ibInfoBlocklist = view.findViewById(R.id.ibInfoBlocklist); final Button btnClear = view.findViewById(R.id.btnClear); + final ImageButton ibRules = view.findViewById(R.id.ibRules); + final ImageButton ibManage = view.findViewById(R.id.ibManage); final Group grpInJunk = view.findViewById(R.id.grpInJunk); final Group grpMore = view.findViewById(R.id.grpMore); @@ -271,6 +273,38 @@ public class FragmentDialogJunk extends FragmentDialogBase { } }); + ibRules.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(v.getContext()); + lbm.sendBroadcast( + new Intent(ActivityView.ACTION_EDIT_RULES) + .putExtra("account", account) + .putExtra("protocol", protocol) + .putExtra("folder", folder) + .putExtra("type", type)); + + dismiss(); + } + }); + + ibManage.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Bundle args = new Bundle(); + args.putBoolean("junk", true); + + FragmentContacts fragment = new FragmentContacts(); + fragment.setArguments(args); + + FragmentTransaction fragmentTransaction = getParentFragmentManager().beginTransaction(); + fragmentTransaction.replace(R.id.content_frame, fragment).addToBackStack("contacts"); + fragmentTransaction.commit(); + + dismiss(); + } + }); + try { boolean common = false; Address[] froms = InternetAddress.parseHeader(from, false); diff --git a/app/src/main/res/layout/dialog_junk.xml b/app/src/main/res/layout/dialog_junk.xml index 98940b5c73..c36ea54d05 100644 --- a/app/src/main/res/layout/dialog_junk.xml +++ b/app/src/main/res/layout/dialog_junk.xml @@ -206,6 +206,34 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/tvBlocklistHint" /> + + + + + btnClear,ibRules,ibManage,tvClearHint" /> - \ No newline at end of file +