diff --git a/flutter/lib/common.dart b/flutter/lib/common.dart index 759a30639..3e5689d35 100644 --- a/flutter/lib/common.dart +++ b/flutter/lib/common.dart @@ -1096,21 +1096,33 @@ void msgBox(SessionID sessionId, String type, String title, String text, dialogManager.dismissAll(); })); } - if (reconnect != null && - title == "Connection Error" && - reconnectTimeout != null) { + if (reconnect != null && title == "Connection Error") { // `enabled` is used to disable the dialog button once the button is clicked. final enabled = true.obs; - final button = Obx(() => _ReconnectCountDownButton( - second: reconnectTimeout, - onPressed: enabled.isTrue - ? () { - // Disable the button - enabled.value = false; - reconnect(dialogManager, sessionId, false); - } - : null, - )); + final button = reconnectTimeout != null + ? Obx(() => _ReconnectCountDownButton( + second: reconnectTimeout, + onPressed: enabled.isTrue + ? () { + // Disable the button + enabled.value = false; + reconnect(dialogManager, sessionId, false); + } + : null, + )) + : Obx( + () => dialogButton( + 'Reconnect', + isOutline: true, + onPressed: enabled.isTrue + ? () { + // Disable the button + enabled.value = false; + reconnect(dialogManager, sessionId, false); + } + : null, + ), + ); buttons.insert(0, button); } if (link.isNotEmpty) {