diff --git a/lib/shared/webview.dart b/lib/shared/webview.dart index eabb08f69..c8bed4cb7 100644 --- a/lib/shared/webview.dart +++ b/lib/shared/webview.dart @@ -18,6 +18,9 @@ class WebView extends StatefulWidget { class _WebViewState extends State { late final WebViewController _controller; + // Keeps track of the URL that we are currently viewing, not necessarily the original + String? currentUrl; + @override void initState() { super.initState(); @@ -40,7 +43,7 @@ class _WebViewState extends State { ..setNavigationDelegate(NavigationDelegate()) ..loadRequest(Uri.parse(widget.url)) ..setNavigationDelegate(NavigationDelegate( - onUrlChange: (_) => setState(() {}), + onUrlChange: (urlChange) => setState(() => currentUrl = urlChange.url), )); if (controller.platform is AndroidWebViewController) { @@ -64,7 +67,7 @@ class _WebViewState extends State { actions: [ NavigationControls( webViewController: _controller, - url: widget.url, + url: currentUrl ?? widget.url, ) ], ),