Jelajahi Sumber

Merge pull request #317 from blackmenthor/master

hotfix widget back to initialChild after webview is tapped on Android
Rafal Wachol 6 tahun lalu
induk
melakukan
327dfe1c18
1 mengubah file dengan 9 tambahan dan 0 penghapusan
  1. 9 0
      lib/src/webview_scaffold.dart

+ 9 - 0
lib/src/webview_scaffold.dart

@@ -65,11 +65,19 @@ class _WebviewScaffoldState extends State<WebviewScaffold> {
   Timer _resizeTimer;
   StreamSubscription<WebViewStateChanged> _onStateChanged;
 
+  var _onDestroy;
+
   @override
   void initState() {
     super.initState();
     webviewReference.close();
 
+    _onDestroy = webviewReference.onDestroy.listen((_) {
+      if (mounted) {
+        Navigator.of(context).pop();
+      }
+    });
+
     if (widget.hidden) {
       _onStateChanged = webviewReference.onStateChanged.listen((WebViewStateChanged state) {
         if (state.type == WebViewState.finishLoad) {
@@ -82,6 +90,7 @@ class _WebviewScaffoldState extends State<WebviewScaffold> {
   @override
   void dispose() {
     super.dispose();
+    _onDestroy?.cancel();
     _resizeTimer?.cancel();
     webviewReference.close();
     if (widget.hidden) {