From 1a6529b3152d403b33255649ed59d22e9b500c92 Mon Sep 17 00:00:00 2001 From: Nick Fisher Date: Thu, 9 May 2024 13:39:01 +0800 Subject: [PATCH] wait for plugin initialization before returning via FlutterFilamentPlugin.create --- flutter_filament/lib/filament/flutter_filament_plugin.dart | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/flutter_filament/lib/filament/flutter_filament_plugin.dart b/flutter_filament/lib/filament/flutter_filament_plugin.dart index 1984dd13..1792348e 100644 --- a/flutter_filament/lib/filament/flutter_filament_plugin.dart +++ b/flutter_filament/lib/filament/flutter_filament_plugin.dart @@ -48,20 +48,22 @@ class FlutterFilamentPlugin extends FilamentViewer { ? nullptr : Pointer.fromAddress(sharedContext); - return FlutterFilamentPlugin._(channel, + var plugin = FlutterFilamentPlugin._(channel, renderCallback: renderCallback, renderCallbackOwner: renderCallbackOwner, resourceLoader: resourceLoader, driver: driverPtr, sharedContext: sharedContextPtr, uberArchivePath: uberArchivePath); + await plugin.initialized; + return plugin; } Future createTexture( int width, int height, int offsetLeft, int offsetRight) async { var result = await _channel .invokeMethod("createTexture", [width, height, offsetLeft, offsetLeft]); - + if (result == null || result[0] == -1) { throw Exception("Failed to create texture"); }