From f03867f1150477e2aba34af9217c781599740baf Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 16 Feb 2023 08:21:56 +0100 Subject: [PATCH] Simplification --- .../java/eu/faircode/email/WebViewEx.java | 32 ++++++++----------- 1 file changed, 13 insertions(+), 19 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/WebViewEx.java b/app/src/main/java/eu/faircode/email/WebViewEx.java index c94fd09806..4e08c21437 100644 --- a/app/src/main/java/eu/faircode/email/WebViewEx.java +++ b/app/src/main/java/eu/faircode/email/WebViewEx.java @@ -298,7 +298,7 @@ public class WebViewEx extends WebView implements DownloadListener, View.OnLongC private float lastX; private float lastY; - private Integer lastXoff; + private int lastXoff; @Override public boolean onTouchEvent(MotionEvent event) { @@ -316,24 +316,18 @@ public class WebViewEx extends WebView implements DownloadListener, View.OnLongC intercept = (yoff > 0 || dy >= 0) && (yoff < bottom || dy <= 0); } - if (intercept) - lastXoff = computeHorizontalScrollOffset(); - else { - int xrange = computeHorizontalScrollRange(); - int xextend = computeHorizontalScrollExtent(); - boolean canScrollHorizontal = (xrange > xextend); - //Log.i("MMM xrange=" + xrange + " xextend=" + xextend + " can=" + canScrollHorizontal); - if (canScrollHorizontal) { - int right = xrange - xextend; - int xoff = computeHorizontalScrollOffset(); - if (lastXoff == null) - lastXoff = xoff; - float dx = lastX - event.getX(); - intercept = (xoff > 0 || dx >= 0) && - (xoff < right || dx <= 0) && - (Math.signum(dx) == Math.signum(xoff - lastXoff)); - lastXoff = xoff; - } + int xrange = computeHorizontalScrollRange(); + int xextend = computeHorizontalScrollExtent(); + boolean canScrollHorizontal = (xrange > xextend); + if (canScrollHorizontal) { + int right = xrange - xextend; + int xoff = computeHorizontalScrollOffset(); + int ldx = xoff - lastXoff; + float dx = lastX - event.getX(); + intercept = (xoff > 0 || dx >= 0) && + (xoff < right || dx <= 0) && + (Math.signum(dx) == Math.signum(ldx)); + lastXoff = xoff; } } getParent().requestDisallowInterceptTouchEvent(intercept || event.getPointerCount() > 1);