X-Git-Url: https://git.ktnx.net/?p=mobile-ledger-staging.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2FRecyclerItemListener.java;h=2a266b937940b66b6aa39554db472b532e726822;hp=df36690742fa6c424266544d7f6abb7a504da711;hb=20c03b7a5eb152d42fbbe9ecbaae27530563b398;hpb=600d64f8daa770afc8f1a809e541573bf317033f diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/RecyclerItemListener.java b/app/src/main/java/net/ktnx/mobileledger/ui/RecyclerItemListener.java index df366907..2a266b93 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/RecyclerItemListener.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/RecyclerItemListener.java @@ -1,5 +1,5 @@ /* - * Copyright © 2019 Damyan Ivanov. + * Copyright © 2020 Damyan Ivanov. * This file is part of MoLe. * MoLe is free software: you can distribute it and/or modify it * under the term of the GNU General Public License as published by @@ -18,26 +18,19 @@ package net.ktnx.mobileledger.ui; import android.content.Context; -import androidx.annotation.NonNull; -import androidx.recyclerview.widget.RecyclerView; -import androidx.recyclerview.widget.RecyclerView.OnItemTouchListener; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.View; -public class RecyclerItemListener implements OnItemTouchListener { - private RecyclerTouchListener listener; - private GestureDetector gd; +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; +import androidx.recyclerview.widget.RecyclerView.OnItemTouchListener; - public interface RecyclerTouchListener { - void onClickItem(View v, int position); - void onLongClickItem(View v, int position); - } +public class RecyclerItemListener implements OnItemTouchListener { + private final GestureDetector gd; public RecyclerItemListener(Context ctx, RecyclerView rv, RecyclerTouchListener listener) { - this.listener = listener; - this.gd = new GestureDetector( - ctx, new GestureDetector.SimpleOnGestureListener() { + this.gd = new GestureDetector(ctx, new GestureDetector.SimpleOnGestureListener() { @Override public void onLongPress(MotionEvent e) { View v = rv.findChildViewUnder(e.getX(), e.getY()); @@ -50,24 +43,26 @@ public class RecyclerItemListener implements OnItemTouchListener { listener.onClickItem(v, rv.getChildAdapterPosition(v)); return true; } - } - ); + }); } - @Override public boolean onInterceptTouchEvent(@NonNull RecyclerView recyclerView, @NonNull MotionEvent motionEvent) { View v = recyclerView.findChildViewUnder(motionEvent.getX(), motionEvent.getY()); return (v != null) && gd.onTouchEvent(motionEvent); } - @Override public void onTouchEvent(@NonNull RecyclerView recyclerView, @NonNull MotionEvent motionEvent) { } - @Override public void onRequestDisallowInterceptTouchEvent(boolean b) { } + + public interface RecyclerTouchListener { + void onClickItem(View v, int position); + + void onLongClickItem(View v, int position); + } }