diff --git a/app/src/main/java/eu/faircode/email/FixedRecyclerView.java b/app/src/main/java/eu/faircode/email/FixedRecyclerView.java new file mode 100644 index 0000000000..f29794d945 --- /dev/null +++ b/app/src/main/java/eu/faircode/email/FixedRecyclerView.java @@ -0,0 +1,34 @@ +package eu.faircode.email; + +import android.content.Context; +import android.util.AttributeSet; +import android.view.MotionEvent; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.recyclerview.widget.RecyclerView; + +public class FixedRecyclerView extends RecyclerView { + public FixedRecyclerView(@NonNull Context context) { + super(context); + } + + public FixedRecyclerView(@NonNull Context context, @Nullable AttributeSet attrs) { + super(context, attrs); + } + + public FixedRecyclerView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyle) { + super(context, attrs, defStyle); + } + + @Override + public boolean onInterceptTouchEvent(MotionEvent e) { + try { + return super.onInterceptTouchEvent(e); + } catch (IllegalStateException ex) { + // Range start point not set + Log.w(ex); + return false; + } + } +} diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index ae8abd2657..e53d7f093b 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -89,7 +89,7 @@ public class FragmentMessages extends FragmentEx { private ImageButton ibHintSelect; private ImageButton ibHintCompact; private TextView tvNoEmail; - private RecyclerView rvMessage; + private FixedRecyclerView rvMessage; private BottomNavigationView bottom_navigation; private ContentLoadingProgressBar pbWait; private Group grpSupport; @@ -193,7 +193,7 @@ public class FragmentMessages extends FragmentEx { ibHintSelect = view.findViewById(R.id.ibHintSelect); ibHintCompact = view.findViewById(R.id.ibHintCompact); tvNoEmail = view.findViewById(R.id.tvNoEmail); - rvMessage = view.findViewById(R.id.rvFolder); + rvMessage = view.findViewById(R.id.rvMessage); bottom_navigation = view.findViewById(R.id.bottom_navigation); pbWait = view.findViewById(R.id.pbWait); grpSupport = view.findViewById(R.id.grpSupport); diff --git a/app/src/main/res/layout/fragment_messages.xml b/app/src/main/res/layout/fragment_messages.xml index d251b89ba4..84197437a7 100644 --- a/app/src/main/res/layout/fragment_messages.xml +++ b/app/src/main/res/layout/fragment_messages.xml @@ -178,8 +178,8 @@ app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@id/vSeparatorHintCompact" /> - + app:constraint_referenced_ids="rvMessage" />