Skip to content

Commit

Permalink
🐛 Fix duplicate no connectivity dialog shown when app start with no c…
Browse files Browse the repository at this point in the history
…onnection.
  • Loading branch information
AlexV525 committed Feb 20, 2020
1 parent 96c9fc8 commit 3ef3d19
Showing 1 changed file with 14 additions and 19 deletions.
33 changes: 14 additions & 19 deletions lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,9 @@ class OpenJMUAppState extends State<OpenJMUApp> with WidgetsBindingObserver {
WidgetsBinding.instance.addObserver(this);
tryRecoverLoginInfo();

Connectivity().checkConnectivity().then(checkIfNoConnectivity);
SchedulerBinding.instance.addPostFrameCallback((_) {
Connectivity().checkConnectivity().then(checkIfNoConnectivity);
});
connectivitySubscription = Connectivity().onConnectivityChanged.listen(
(ConnectivityResult result) {
checkIfNoConnectivity(result);
Expand Down Expand Up @@ -170,29 +172,22 @@ class OpenJMUAppState extends State<OpenJMUApp> with WidgetsBindingObserver {
}

void checkIfNoConnectivity(ConnectivityResult result) {
if (result == ConnectivityResult.none) {
if (mounted) {
connectivityToastFuture = showToastWidget(
noConnectivityWidget,
duration: 999.weeks,
handleTouch: true,
);
} else {
SchedulerBinding.instance.addPostFrameCallback((_) {
connectivityToastFuture = showToastWidget(
noConnectivityWidget,
duration: 999.weeks,
handleTouch: true,
);
});
}
if (result == ConnectivityResult.none && connectivityToastFuture == null) {
connectivityToastFuture ??= showNoConnectivityDialog;
} else {
if (Instances.connectivityResult == ConnectivityResult.none) {
connectivityToastFuture?.dismiss(showAnim: true);
connectivityToastFuture?.dismiss(showAnim: true);
if (connectivityToastFuture != null) {
connectivityToastFuture = null;
}
}
}

ToastFuture get showNoConnectivityDialog => showToastWidget(
noConnectivityWidget,
duration: 999.weeks,
handleTouch: true,
);

Widget get noConnectivityWidget => Material(
color: Colors.black26,
child: BackdropFilter(
Expand Down

0 comments on commit 3ef3d19

Please sign in to comment.