Fix default browser warning dialog is auto shown when get 401 error

Signed-off-by: dab246 <tdvu@linagora.com>
This commit is contained in:
dab246
2025-04-15 16:40:48 +07:00
committed by Dat H. Pham
parent 37c0aa9cf4
commit 440ea10aff
3 changed files with 11 additions and 1 deletions
+1
View File
@@ -191,6 +191,7 @@ abstract class BaseController extends GetxController
}
Future<void> _executeBeforeReconnectAndLogOut() async {
twakeAppManager.setExecutingBeforeReconnect(true);
await executeBeforeReconnect();
clearDataAndGoToLoginPage();
}
@@ -330,6 +330,7 @@ class MailboxDashBoardController extends ReloadableController
void onReady() {
if (PlatformInfo.isWeb) {
listSearchFilterScrollController = ScrollController();
twakeAppManager.setExecutingBeforeReconnect(false);
}
if (PlatformInfo.isIOS) {
_registerPendingCurrentEmailIdInNotification();
@@ -499,7 +500,10 @@ class MailboxDashBoardController extends ReloadableController
@override
Future<void> onBeforeUnloadBrowserListener(html.Event event) async {
if (event is html.BeforeUnloadEvent && twakeAppManager.hasComposer) {
log('MailboxDashBoardController::onBeforeUnloadBrowserListener:event = ${event.runtimeType} | hasComposer = ${twakeAppManager.hasComposer} | isExecutingBeforeReconnect = ${twakeAppManager.isExecutingBeforeReconnect}');
if (event is html.BeforeUnloadEvent &&
twakeAppManager.hasComposer &&
!twakeAppManager.isExecutingBeforeReconnect) {
event.preventDefault();
}
}
+5
View File
@@ -1,8 +1,13 @@
class TwakeAppManager {
bool _hasComposer = false;
bool _isExecutingBeforeReconnect = false;
void setHasComposer(bool value) => _hasComposer = value;
bool get hasComposer => _hasComposer;
void setExecutingBeforeReconnect(bool value) => _isExecutingBeforeReconnect = value;
bool get isExecutingBeforeReconnect => _isExecutingBeforeReconnect;
}