diff --git a/app/src/main/java/eu/faircode/email/AdapterAccount.java b/app/src/main/java/eu/faircode/email/AdapterAccount.java index 6d4b8a07e2..0710ba97f0 100644 --- a/app/src/main/java/eu/faircode/email/AdapterAccount.java +++ b/app/src/main/java/eu/faircode/email/AdapterAccount.java @@ -40,7 +40,11 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.widget.PopupMenu; import androidx.constraintlayout.widget.Group; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; @@ -53,9 +57,11 @@ import java.util.ArrayList; import java.util.List; public class AdapterAccount extends RecyclerView.Adapter { + private Fragment parentFragment; + private boolean settings; + private Context context; private LifecycleOwner owner; - private boolean settings; private LayoutInflater inflater; private int colorUnread; @@ -270,16 +276,28 @@ public class AdapterAccount extends RecyclerView.Adapter accounts) { diff --git a/app/src/main/java/eu/faircode/email/AdapterAnswer.java b/app/src/main/java/eu/faircode/email/AdapterAnswer.java index 517388c5f6..f87af7583c 100644 --- a/app/src/main/java/eu/faircode/email/AdapterAnswer.java +++ b/app/src/main/java/eu/faircode/email/AdapterAnswer.java @@ -31,7 +31,11 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.widget.PopupMenu; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; @@ -41,6 +45,8 @@ import java.util.ArrayList; import java.util.List; public class AdapterAnswer extends RecyclerView.Adapter { + private Fragment parentFragment; + private Context context; private LifecycleOwner owner; private LayoutInflater inflater; @@ -160,12 +166,25 @@ public class AdapterAnswer extends RecyclerView.Adapter() { @Override protected Boolean onExecute(Context context, Bundle args) { diff --git a/app/src/main/java/eu/faircode/email/AdapterAttachment.java b/app/src/main/java/eu/faircode/email/AdapterAttachment.java index 0c73ed1af2..171cf9e4d4 100644 --- a/app/src/main/java/eu/faircode/email/AdapterAttachment.java +++ b/app/src/main/java/eu/faircode/email/AdapterAttachment.java @@ -38,7 +38,11 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.core.content.FileProvider; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.preference.PreferenceManager; import androidx.recyclerview.widget.DiffUtil; @@ -55,9 +59,11 @@ import java.util.Comparator; import java.util.List; public class AdapterAttachment extends RecyclerView.Adapter { + private Fragment parentFragment; + private Context context; - private LayoutInflater inflater; private LifecycleOwner owner; + private LayoutInflater inflater; private boolean readonly; private boolean debug; @@ -277,14 +283,28 @@ public class AdapterAttachment extends RecyclerView.Adapter attachments) { diff --git a/app/src/main/java/eu/faircode/email/AdapterContact.java b/app/src/main/java/eu/faircode/email/AdapterContact.java index 279f0e858c..db99a6b80b 100644 --- a/app/src/main/java/eu/faircode/email/AdapterContact.java +++ b/app/src/main/java/eu/faircode/email/AdapterContact.java @@ -33,7 +33,11 @@ import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; @@ -43,6 +47,8 @@ import java.util.ArrayList; import java.util.List; public class AdapterContact extends RecyclerView.Adapter { + private Fragment parentFragment; + private Context context; private LifecycleOwner owner; private LayoutInflater inflater; @@ -225,14 +231,28 @@ public class AdapterContact extends RecyclerView.Adapter contacts) { diff --git a/app/src/main/java/eu/faircode/email/AdapterFolder.java b/app/src/main/java/eu/faircode/email/AdapterFolder.java index 7199071260..a83684f73d 100644 --- a/app/src/main/java/eu/faircode/email/AdapterFolder.java +++ b/app/src/main/java/eu/faircode/email/AdapterFolder.java @@ -44,7 +44,10 @@ import androidx.annotation.NonNull; import androidx.annotation.RequiresApi; import androidx.appcompat.widget.PopupMenu; import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.preference.PreferenceManager; import androidx.recyclerview.widget.DiffUtil; @@ -63,15 +66,15 @@ import java.util.Map; import static android.app.Activity.RESULT_OK; public class AdapterFolder extends RecyclerView.Adapter { - private Context context; - private LayoutInflater inflater; - private LifecycleOwner owner; private Fragment parentFragment; - private boolean show_hidden; - private long account; + private boolean show_hidden; private IFolderSelectedListener listener; + private Context context; + private LifecycleOwner owner; + private LayoutInflater inflater; + private boolean subscriptions; private boolean debug; private int dp12; @@ -599,16 +602,16 @@ public class AdapterFolder extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; private LifecycleOwner owner; private LayoutInflater inflater; @@ -206,11 +211,23 @@ public class AdapterIdentity extends RecyclerView.Adapter identities) { diff --git a/app/src/main/java/eu/faircode/email/AdapterImage.java b/app/src/main/java/eu/faircode/email/AdapterImage.java index b34e923712..e9c7689947 100644 --- a/app/src/main/java/eu/faircode/email/AdapterImage.java +++ b/app/src/main/java/eu/faircode/email/AdapterImage.java @@ -35,7 +35,11 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.core.content.FileProvider; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; @@ -49,10 +53,10 @@ import java.util.Comparator; import java.util.List; public class AdapterImage extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; private LayoutInflater inflater; private LifecycleOwner owner; - private View parentView; private List items = new ArrayList<>(); @@ -132,7 +136,7 @@ public class AdapterImage extends RecyclerView.Adapter // Check if viewer available if (ris.size() == 0) { Snackbar.make( - parentView, + parentFragment.getView(), context.getString(R.string.title_no_viewer, attachment.type), Snackbar.LENGTH_LONG).show(); return; @@ -178,12 +182,23 @@ public class AdapterImage extends RecyclerView.Adapter } } - AdapterImage(Context context, LifecycleOwner owner, View parentView) { - this.context = context; + AdapterImage(Fragment parentFragment) { + this.parentFragment = parentFragment; + this.context = parentFragment.getContext(); + this.owner = parentFragment.getViewLifecycleOwner(); this.inflater = LayoutInflater.from(context); - this.owner = owner; - this.parentView = parentView; + setHasStableIds(true); + + owner.getLifecycle().addObserver(new LifecycleObserver() { + @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) + public void onDestroyed() { + Log.i(AdapterImage.this + " parent destroyed"); + AdapterImage.this.parentFragment = null; + AdapterImage.this.context = null; + AdapterImage.this.owner = null; + } + }); } public void set(@NonNull List attachments) { diff --git a/app/src/main/java/eu/faircode/email/AdapterLog.java b/app/src/main/java/eu/faircode/email/AdapterLog.java index cdd5617f36..c124e12041 100644 --- a/app/src/main/java/eu/faircode/email/AdapterLog.java +++ b/app/src/main/java/eu/faircode/email/AdapterLog.java @@ -26,6 +26,11 @@ import android.view.ViewGroup; import android.widget.TextView; import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; +import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; @@ -36,7 +41,9 @@ import java.util.ArrayList; import java.util.List; public class AdapterLog extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; + private LifecycleOwner owner; private LayoutInflater inflater; private List items = new ArrayList<>(); @@ -61,10 +68,23 @@ public class AdapterLog extends RecyclerView.Adapter { } - AdapterLog(Context context) { - this.context = context; - this.inflater = LayoutInflater.from(context); + AdapterLog(Fragment parentFragment) { + this.parentFragment = parentFragment; + this.context = parentFragment.getContext(); + this.owner = parentFragment.getViewLifecycleOwner(); + this.inflater = LayoutInflater.from(parentFragment.getContext()); + setHasStableIds(true); + + owner.getLifecycle().addObserver(new LifecycleObserver() { + @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) + public void onDestroyed() { + Log.i(AdapterLog.this + " parent destroyed"); + AdapterLog.this.parentFragment = null; + AdapterLog.this.context = null; + AdapterLog.this.owner = null; + } + }); } public void set(@NonNull List logs) { diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index e227b2f88b..e0c6d9c79e 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -145,19 +145,19 @@ import biweekly.util.ICalDate; import static android.app.Activity.RESULT_OK; public class AdapterMessage extends RecyclerView.Adapter { - private Context context; - private LayoutInflater inflater; - private LifecycleOwner owner; private Fragment parentFragment; private ViewType viewType; private boolean compact; private int zoom; private String sort; private boolean filter_duplicates; - private boolean suitable; - private int answers = -1; private IProperties properties; + private Context context; + private LifecycleOwner owner; + private LayoutInflater inflater; + private boolean suitable; + private int dp36; private int colorPrimary; private int colorAccent; @@ -182,6 +182,7 @@ public class AdapterMessage extends RecyclerView.Adapter differ; private SelectionTracker selectionTracker = null; @@ -389,7 +390,7 @@ public class AdapterMessage extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; - private LayoutInflater inflater; private LifecycleOwner owner; + private LayoutInflater inflater; private boolean debug; @@ -207,15 +212,26 @@ public class AdapterOperation extends RecyclerView.Adapter operations) { diff --git a/app/src/main/java/eu/faircode/email/AdapterOrder.java b/app/src/main/java/eu/faircode/email/AdapterOrder.java index 3a2014cff0..6fcd0b4d41 100644 --- a/app/src/main/java/eu/faircode/email/AdapterOrder.java +++ b/app/src/main/java/eu/faircode/email/AdapterOrder.java @@ -26,7 +26,11 @@ import android.view.ViewGroup; import android.widget.TextView; import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; @@ -37,6 +41,7 @@ import java.util.List; import java.util.Objects; public class AdapterOrder extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; private LifecycleOwner owner; private LayoutInflater inflater; @@ -63,11 +68,23 @@ public class AdapterOrder extends RecyclerView.Adapter } } - AdapterOrder(Context context, LifecycleOwner owner) { - this.context = context; - this.owner = owner; + AdapterOrder(Fragment parentFragment) { + this.parentFragment = parentFragment; + this.context = parentFragment.getContext(); + this.owner = parentFragment.getViewLifecycleOwner(); this.inflater = LayoutInflater.from(context); + setHasStableIds(true); + + owner.getLifecycle().addObserver(new LifecycleObserver() { + @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) + public void onDestroyed() { + Log.i(AdapterOrder.this + " parent destroyed"); + AdapterOrder.this.parentFragment = null; + AdapterOrder.this.context = null; + AdapterOrder.this.owner = null; + } + }); } public void set(@NonNull List items) { diff --git a/app/src/main/java/eu/faircode/email/AdapterRule.java b/app/src/main/java/eu/faircode/email/AdapterRule.java index 5e6d45161f..fc5ffca9fa 100644 --- a/app/src/main/java/eu/faircode/email/AdapterRule.java +++ b/app/src/main/java/eu/faircode/email/AdapterRule.java @@ -33,7 +33,11 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.appcompat.widget.PopupMenu; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; @@ -51,10 +55,10 @@ import java.util.List; import javax.mail.MessagingException; public class AdapterRule extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; private LifecycleOwner owner; private LayoutInflater inflater; - private View parentView; private List items = new ArrayList<>(); @@ -262,7 +266,7 @@ public class AdapterRule extends RecyclerView.Adapter { @Override protected void onExecuted(Bundle args, Integer applied) { Snackbar.make( - parentView, + parentFragment.getView(), context.getString(R.string.title_rule_applied, applied), Snackbar.LENGTH_LONG).show(); } @@ -281,12 +285,23 @@ public class AdapterRule extends RecyclerView.Adapter { } } - AdapterRule(Context context, LifecycleOwner owner, View parentView) { - this.context = context; - this.owner = owner; + AdapterRule(Fragment parentFragment) { + this.parentFragment = parentFragment; + this.context = parentFragment.getContext(); + this.owner = parentFragment.getViewLifecycleOwner(); this.inflater = LayoutInflater.from(context); - this.parentView = parentView; + setHasStableIds(true); + + owner.getLifecycle().addObserver(new LifecycleObserver() { + @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) + public void onDestroyed() { + Log.i(AdapterRule.this + " parent destroyed"); + AdapterRule.this.parentFragment = null; + AdapterRule.this.context = null; + AdapterRule.this.owner = null; + } + }); } public void set(@NonNull List rules) { diff --git a/app/src/main/java/eu/faircode/email/AdapterRuleMatch.java b/app/src/main/java/eu/faircode/email/AdapterRuleMatch.java index 6d12ad7ef6..3f193557d8 100644 --- a/app/src/main/java/eu/faircode/email/AdapterRuleMatch.java +++ b/app/src/main/java/eu/faircode/email/AdapterRuleMatch.java @@ -26,7 +26,11 @@ import android.view.ViewGroup; import android.widget.TextView; import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.lifecycle.Lifecycle; +import androidx.lifecycle.LifecycleObserver; import androidx.lifecycle.LifecycleOwner; +import androidx.lifecycle.OnLifecycleEvent; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; @@ -37,6 +41,7 @@ import java.util.ArrayList; import java.util.List; public class AdapterRuleMatch extends RecyclerView.Adapter { + private Fragment parentFragment; private Context context; private LifecycleOwner owner; private LayoutInflater inflater; @@ -70,11 +75,23 @@ public class AdapterRuleMatch extends RecyclerView.Adapter messages) { diff --git a/app/src/main/java/eu/faircode/email/FragmentAccounts.java b/app/src/main/java/eu/faircode/email/FragmentAccounts.java index e68087cced..903b30f3e9 100644 --- a/app/src/main/java/eu/faircode/email/FragmentAccounts.java +++ b/app/src/main/java/eu/faircode/email/FragmentAccounts.java @@ -92,7 +92,7 @@ public class FragmentAccounts extends FragmentBase { itemDecorator.setDrawable(getContext().getDrawable(R.drawable.divider)); rvAccount.addItemDecoration(itemDecorator); - adapter = new AdapterAccount(getContext(), getViewLifecycleOwner(), settings); + adapter = new AdapterAccount(this, settings); rvAccount.setAdapter(adapter); fab.setOnClickListener(new View.OnClickListener() { diff --git a/app/src/main/java/eu/faircode/email/FragmentAnswers.java b/app/src/main/java/eu/faircode/email/FragmentAnswers.java index 396456d4c0..979e8464df 100644 --- a/app/src/main/java/eu/faircode/email/FragmentAnswers.java +++ b/app/src/main/java/eu/faircode/email/FragmentAnswers.java @@ -70,7 +70,7 @@ public class FragmentAnswers extends FragmentBase { itemDecorator.setDrawable(getContext().getDrawable(R.drawable.divider)); rvAnswer.addItemDecoration(itemDecorator); - adapter = new AdapterAnswer(getContext(), getViewLifecycleOwner()); + adapter = new AdapterAnswer(this); rvAnswer.setAdapter(adapter); fab.setOnClickListener(new View.OnClickListener() { diff --git a/app/src/main/java/eu/faircode/email/FragmentCompose.java b/app/src/main/java/eu/faircode/email/FragmentCompose.java index ddb9f8da7c..a2ca7acd7f 100644 --- a/app/src/main/java/eu/faircode/email/FragmentCompose.java +++ b/app/src/main/java/eu/faircode/email/FragmentCompose.java @@ -529,7 +529,7 @@ public class FragmentCompose extends FragmentBase { rvAttachment.setLayoutManager(llm); rvAttachment.setItemAnimator(null); - adapter = new AdapterAttachment(getContext(), getViewLifecycleOwner(), false); + adapter = new AdapterAttachment(this, false); rvAttachment.setAdapter(adapter); tvNoInternetAttachments.setVisibility(View.GONE); diff --git a/app/src/main/java/eu/faircode/email/FragmentContacts.java b/app/src/main/java/eu/faircode/email/FragmentContacts.java index b147c8958c..24a8ddbf90 100644 --- a/app/src/main/java/eu/faircode/email/FragmentContacts.java +++ b/app/src/main/java/eu/faircode/email/FragmentContacts.java @@ -75,7 +75,7 @@ public class FragmentContacts extends FragmentBase { LinearLayoutManager llm = new LinearLayoutManager(getContext()); rvContacts.setLayoutManager(llm); - adapter = new AdapterContact(getContext(), getViewLifecycleOwner()); + adapter = new AdapterContact(this); rvContacts.setAdapter(adapter); // Initialize diff --git a/app/src/main/java/eu/faircode/email/FragmentDialogFolder.java b/app/src/main/java/eu/faircode/email/FragmentDialogFolder.java index 7a8be2c63b..83f58c6bfe 100644 --- a/app/src/main/java/eu/faircode/email/FragmentDialogFolder.java +++ b/app/src/main/java/eu/faircode/email/FragmentDialogFolder.java @@ -77,7 +77,7 @@ public class FragmentDialogFolder extends DialogFragment { long account = args.getLong("account"); AdapterFolder adapter = new AdapterFolder( - getContext(), getActivity(), FragmentDialogFolder.this, + FragmentDialogFolder.this, account, false, new AdapterFolder.IFolderSelectedListener() { @Override public void onFolderSelected(TupleFolderEx folder) { diff --git a/app/src/main/java/eu/faircode/email/FragmentFolders.java b/app/src/main/java/eu/faircode/email/FragmentFolders.java index f11a22e37f..d41dd0fa30 100644 --- a/app/src/main/java/eu/faircode/email/FragmentFolders.java +++ b/app/src/main/java/eu/faircode/email/FragmentFolders.java @@ -150,9 +150,7 @@ public class FragmentFolders extends FragmentBase { itemDecorator.setDrawable(getContext().getDrawable(R.drawable.divider)); rvFolder.addItemDecoration(itemDecorator); - adapter = new AdapterFolder( - getContext(), getViewLifecycleOwner(), this, - account, show_hidden, null); + adapter = new AdapterFolder(this, account, show_hidden, null); rvFolder.setAdapter(adapter); fab.setOnClickListener(new View.OnClickListener() { diff --git a/app/src/main/java/eu/faircode/email/FragmentIdentities.java b/app/src/main/java/eu/faircode/email/FragmentIdentities.java index fe97821297..8fea1f797a 100644 --- a/app/src/main/java/eu/faircode/email/FragmentIdentities.java +++ b/app/src/main/java/eu/faircode/email/FragmentIdentities.java @@ -72,7 +72,7 @@ public class FragmentIdentities extends FragmentBase { itemDecorator.setDrawable(getContext().getDrawable(R.drawable.divider)); rvIdentity.addItemDecoration(itemDecorator); - adapter = new AdapterIdentity(getContext(), getViewLifecycleOwner()); + adapter = new AdapterIdentity(this); rvIdentity.setAdapter(adapter); fab.setOnClickListener(new View.OnClickListener() { diff --git a/app/src/main/java/eu/faircode/email/FragmentLogs.java b/app/src/main/java/eu/faircode/email/FragmentLogs.java index 7e262dced3..7c6e86cf43 100644 --- a/app/src/main/java/eu/faircode/email/FragmentLogs.java +++ b/app/src/main/java/eu/faircode/email/FragmentLogs.java @@ -65,7 +65,7 @@ public class FragmentLogs extends FragmentBase { LinearLayoutManager llm = new LinearLayoutManager(getContext()); rvLog.setLayoutManager(llm); - adapter = new AdapterLog(getContext()); + adapter = new AdapterLog(this); rvLog.setAdapter(adapter); // Initialize diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 0878e46e13..b390cb405f 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -529,9 +529,7 @@ public class FragmentMessages extends FragmentBase implements SharedPreferences. String sort = prefs.getString("sort", "time"); boolean filter_duplicates = prefs.getBoolean("filter_duplicates", false); - adapter = new AdapterMessage( - getContext(), getViewLifecycleOwner(), this, - viewType, compact, zoom, sort, filter_duplicates, iProperties); + adapter = new AdapterMessage(this, viewType, compact, zoom, sort, filter_duplicates, iProperties); rvMessage.setAdapter(adapter); seekBar.setOnTouchListener(new View.OnTouchListener() { diff --git a/app/src/main/java/eu/faircode/email/FragmentOperations.java b/app/src/main/java/eu/faircode/email/FragmentOperations.java index d28ee346ea..c8084e25eb 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOperations.java +++ b/app/src/main/java/eu/faircode/email/FragmentOperations.java @@ -74,7 +74,7 @@ public class FragmentOperations extends FragmentBase { LinearLayoutManager llm = new LinearLayoutManager(getContext()); rvOperation.setLayoutManager(llm); - adapter = new AdapterOperation(getContext(), getViewLifecycleOwner()); + adapter = new AdapterOperation(this); rvOperation.setAdapter(adapter); // Initialize diff --git a/app/src/main/java/eu/faircode/email/FragmentOrder.java b/app/src/main/java/eu/faircode/email/FragmentOrder.java index 06de210a8b..99a6771058 100644 --- a/app/src/main/java/eu/faircode/email/FragmentOrder.java +++ b/app/src/main/java/eu/faircode/email/FragmentOrder.java @@ -78,7 +78,7 @@ public class FragmentOrder extends FragmentBase { LinearLayoutManager llm = new LinearLayoutManager(getContext()); rvOrder.setLayoutManager(llm); - adapter = new AdapterOrder(getContext(), getViewLifecycleOwner()); + adapter = new AdapterOrder(this); rvOrder.setAdapter(adapter); new ItemTouchHelper(touchHelper).attachToRecyclerView(rvOrder); diff --git a/app/src/main/java/eu/faircode/email/FragmentRule.java b/app/src/main/java/eu/faircode/email/FragmentRule.java index acfe30aa4c..0a85d9e0e4 100644 --- a/app/src/main/java/eu/faircode/email/FragmentRule.java +++ b/app/src/main/java/eu/faircode/email/FragmentRule.java @@ -638,7 +638,7 @@ public class FragmentRule extends FragmentBase { LinearLayoutManager llm = new LinearLayoutManager(getContext()); rvMessage.setLayoutManager(llm); - final AdapterRuleMatch adapter = new AdapterRuleMatch(getContext(), getViewLifecycleOwner()); + final AdapterRuleMatch adapter = new AdapterRuleMatch(this); rvMessage.setAdapter(adapter); tvNoMessages.setVisibility(View.GONE); diff --git a/app/src/main/java/eu/faircode/email/FragmentRules.java b/app/src/main/java/eu/faircode/email/FragmentRules.java index d353ea3bd4..bc6f2626d0 100644 --- a/app/src/main/java/eu/faircode/email/FragmentRules.java +++ b/app/src/main/java/eu/faircode/email/FragmentRules.java @@ -78,7 +78,7 @@ public class FragmentRules extends FragmentBase { LinearLayoutManager llm = new LinearLayoutManager(getContext()); rvRule.setLayoutManager(llm); - adapter = new AdapterRule(getContext(), getViewLifecycleOwner(), view); + adapter = new AdapterRule(this); rvRule.setAdapter(adapter); DividerItemDecoration itemDecorator = new DividerItemDecoration(getContext(), llm.getOrientation());