pichillilorenzo / flutter_inappwebview

A Flutter plugin that allows you to add an inline webview, to use a headless webview, and to open an in-app browser window.
https://inappwebview.dev
Apache License 2.0
3.22k stars 1.57k forks source link

[iOS] InAppWebView flickering when overScrolled #1988

Open synd-guide opened 8 months ago

synd-guide commented 8 months ago

Device information:

Description

*** Debug onOverScrolled: (InAppWebViewController controller, int x, int y, bool clampedX, bool clampedY) { // Pull down, y can be: -12 -56 -250 // Pull up, y can be: -250 -156 -92 // Still pull up, Flickering <=== Bug here

github-actions[bot] commented 8 months ago

👋 @synd-guide

NOTE: This comment is auto-generated.

Are you sure you have already searched for the same problem?

Some people open new issues but they didn't search for something similar or for the same issue. Please, search for it using the GitHub issue search box or on the official inappwebview.dev website, or, also, using Google, StackOverflow, etc. before posting a new one. You may already find an answer to your problem!

If this is really a new issue, then thank you for raising it. I will investigate it and get back to you as soon as possible. Please, make sure you have given me as much context as possible! Also, if you didn't already, post a code example that can replicate this issue.

In the meantime, you can already search for some possible solutions online! Because this plugin uses native WebView, you can search online for the same issue adding android WebView [MY ERROR HERE] or ios WKWebView [MY ERROR HERE] keywords.

Following these steps can save you, me, and other people a lot of time, thanks!

pichillilorenzo commented 8 months ago

It seems it’s how native pull to refresh works on iOS, that is different from Android. I didn’t find any better solution than the current one. On Android, if you still hold touching, the refresh callback is not called. Instead on iOS, after a little while, it gets called automatically on native side, so this happens. If you find anything to make it work better on Swift native side, share it or make a pull request about it, thanks.

pichillilorenzo commented 8 months ago

It seems this behaviour is the same also on other iOS Apps, such as LinkedIn.