From 9c6c50b0dadeb365d27964d92a04dffafd4000cf Mon Sep 17 00:00:00 2001 From: Fabian Freund Date: Mon, 23 Jun 2025 21:14:05 +0200 Subject: [PATCH] reinstantiate fragment --- .../lib/src/geckoview_widget.dart | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/flutter_mozilla_components/lib/src/geckoview_widget.dart b/packages/flutter_mozilla_components/lib/src/geckoview_widget.dart index f01ed343..563db36a 100644 --- a/packages/flutter_mozilla_components/lib/src/geckoview_widget.dart +++ b/packages/flutter_mozilla_components/lib/src/geckoview_widget.dart @@ -28,11 +28,18 @@ class _GeckoViewState extends State { ); final browserService = GeckoBrowserService(); + late final AppLifecycleListener _listener; @override void initState() { super.initState(); _setupMethodCallHandler(); + _listener = AppLifecycleListener( + onResume: () async { + //Make sure fragment visible after rsuming the app in case native resources have been disposed + await _showNativeFragment(); + }, + ); } void _setupMethodCallHandler() { @@ -66,6 +73,14 @@ class _GeckoViewState extends State { return false; } + @override + void dispose() { + platform.setMethodCallHandler(null); + _listener.dispose(); + + super.dispose(); + } + @override Widget build(BuildContext context) { return PlatformViewLink(