diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index 1361c372fa..a612cc999b 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -370,7 +370,6 @@ public class FragmentMessages extends FragmentBase private boolean navigating = false; private AdapterMessage adapter; - private ItemTouchHelper itemTouchHelper; private AdapterMessage.ViewType viewType; private SelectionPredicateMessage selectionPredicate = null; @@ -2043,13 +2042,10 @@ public class FragmentMessages extends FragmentBase public void onRequestDisallowInterceptTouchEvent(boolean disallowIntercept) { } }); - } else { - itemTouchHelper = new ItemTouchHelper(touchHelper); - itemTouchHelper.attachToRecyclerView(rvMessage); - } + } else + new ItemTouchHelper(touchHelper).attachToRecyclerView(rvMessage); } else { - itemTouchHelper = new ItemTouchHelper(touchHelper); - itemTouchHelper.attachToRecyclerView(rvMessage); + new ItemTouchHelper(touchHelper).attachToRecyclerView(rvMessage); selectionPredicate = new SelectionPredicateMessage(rvMessage); @@ -3252,9 +3248,10 @@ public class FragmentMessages extends FragmentBase } private void redraw(RecyclerView.ViewHolder vh) { - if (vh != null && itemTouchHelper != null) + if (vh != null) try { - itemTouchHelper.onChildViewDetachedFromWindow(vh.itemView); + rvMessage.getLayoutManager().detachView(vh.itemView); + rvMessage.getLayoutManager().removeDetachedView(vh.itemView); } catch (Throwable ex) { Log.e(ex); } diff --git a/app/src/main/java/eu/faircode/email/Helper.java b/app/src/main/java/eu/faircode/email/Helper.java index 765d3f790b..f1e174c801 100644 --- a/app/src/main/java/eu/faircode/email/Helper.java +++ b/app/src/main/java/eu/faircode/email/Helper.java @@ -130,7 +130,6 @@ import androidx.lifecycle.LifecycleOwner; import androidx.lifecycle.OnLifecycleEvent; import androidx.preference.PreferenceManager; import androidx.recyclerview.selection.SelectionTracker; -import androidx.recyclerview.widget.ItemTouchHelper; import androidx.recyclerview.widget.RecyclerView; import androidx.viewpager.widget.PagerAdapter; @@ -1876,7 +1875,6 @@ public class Helper { SelectionTracker.SelectionPredicate.class.isAssignableFrom(type) || PagerAdapter.class.isAssignableFrom(type) || RecyclerView.Adapter.class.isAssignableFrom(type) || - ItemTouchHelper.class.isAssignableFrom(type) || TwoStateOwner.class.isAssignableFrom(type)) try { Log.i("Clearing " + fname);