diff --git a/flutter/lib/web/bridge.dart b/flutter/lib/web/bridge.dart index 3d52e7d5d..a3d93f88e 100644 --- a/flutter/lib/web/bridge.dart +++ b/flutter/lib/web/bridge.dart @@ -1539,12 +1539,12 @@ class RustdeskImpl { Future mainAccountAuth( {required String op, required bool rememberMe, dynamic hint}) { // Safari only allows auth popups while handling the original user gesture. - // Call into JS synchronously so the web OIDC flow can pre-open the window. - js.context.callMethod('setByName', [ + // Use Future.sync so the JS call runs synchronously (pre-opening the OIDC + // window) while any interop error still surfaces as a Future error. + return Future.sync(() => js.context.callMethod('setByName', [ 'account_auth', jsonEncode({'op': op, 'remember': rememberMe}) - ]); - return Future.value(); + ])); } Future mainAccountAuthCancel({dynamic hint}) {