|
|
|
@ -1398,13 +1398,12 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public boolean onTouchEvent(MotionEvent event) {
|
|
|
|
|
if (event.getPointerCount() == 2)
|
|
|
|
|
getParent().requestDisallowInterceptTouchEvent(true); // zoom
|
|
|
|
|
else if (event.getAction() == MotionEvent.ACTION_MOVE) {
|
|
|
|
|
if (event.getPointerCount() == 1) {
|
|
|
|
|
int range = computeVerticalScrollRange() - computeVerticalScrollExtent();
|
|
|
|
|
if (range > 0) // scroll
|
|
|
|
|
getParent().requestDisallowInterceptTouchEvent(true);
|
|
|
|
|
}
|
|
|
|
|
} else // zoom
|
|
|
|
|
getParent().requestDisallowInterceptTouchEvent(true);
|
|
|
|
|
return super.onTouchEvent(event);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -1419,8 +1418,11 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|
|
|
|
@Override
|
|
|
|
|
protected void onOverScrolled(int scrollX, int scrollY, boolean clampedX, boolean clampedY) {
|
|
|
|
|
super.onOverScrolled(scrollX, scrollY, clampedX, clampedY);
|
|
|
|
|
if (clampedY)
|
|
|
|
|
properties.scrollBy(0, dy);
|
|
|
|
|
if (clampedY) {
|
|
|
|
|
int range = computeVerticalScrollRange() - computeVerticalScrollExtent();
|
|
|
|
|
if (range > 0) // This is to prevent flicker
|
|
|
|
|
properties.scrollBy(0, dy);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|