From 463dc7d36f0030897595011b4d16e0a5185494ee Mon Sep 17 00:00:00 2001 From: M66B Date: Sat, 27 Apr 2019 10:40:06 +0200 Subject: [PATCH] Improved webview touch handling --- .../eu/faircode/email/AdapterMessage.java | 58 +++++++++---------- .../eu/faircode/email/FragmentMessages.java | 13 ++++- 2 files changed, 39 insertions(+), 32 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 03969f3c95..90d8730ade 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -1294,7 +1294,7 @@ public class AdapterMessage extends RecyclerView.Adapter getAttachments(long id); - void scrollTo(int pos, int dy); + void scrollTo(int pos); + + void scrollBy(int dx, int dy); void move(long id, String target, boolean type); diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java index f86cc81f35..79cfd627ba 100644 --- a/app/src/main/java/eu/faircode/email/FragmentMessages.java +++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java @@ -738,12 +738,21 @@ public class FragmentMessages extends FragmentBase { } @Override - public void scrollTo(final int pos, final int dy) { + public void scrollTo(final int pos) { new Handler().post(new Runnable() { @Override public void run() { rvMessage.scrollToPosition(pos); - rvMessage.scrollBy(0, dy); + } + }); + } + + @Override + public void scrollBy(final int dx, final int dy) { + new Handler().post(new Runnable() { + @Override + public void run() { + rvMessage.scrollBy(dx, dy); } }); }