'Is there a way to query if a WebView is scrollable?

I am using a PreloadPageView to display WebViews whose content vary in length. I would like to be able to inform the user when there is more content below on WebViews which are scrollable. I have played around with the controller scroll methods and with some JS evaluations, but to no avail. Wish there was a controller.isScrollable() method!



Solution 1:[1]

You can get the DOM height.

Call this in the webview' s onLoadStop function:

controller
  .evaluateJavascript(source: '''(() => { return document.documentElement.scrollHeight;})()''')
  .then((scrollHeight) {
    final widgetHeight = _webViewKey.currentContext?.size?.height ?? 0;
    // compare scrollHeight to widgetHeight
  });

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Krahmal