From da4679f0aec50970712e0013468961ca81b49711 Mon Sep 17 00:00:00 2001 From: 21pages Date: Wed, 16 Aug 2023 14:35:29 +0800 Subject: [PATCH] ab: add full check in pullAb && sync recent check login Signed-off-by: 21pages --- flutter/lib/models/ab_model.dart | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/flutter/lib/models/ab_model.dart b/flutter/lib/models/ab_model.dart index 1c07582d4..c160a139c 100644 --- a/flutter/lib/models/ab_model.dart +++ b/flutter/lib/models/ab_model.dart @@ -46,14 +46,17 @@ class AbModel { AbModel(this.parent) { if (desktopType == DesktopType.main) { Timer.periodic(Duration(milliseconds: 500), (timer) async { - if (_timerCounter++ % 6 == 0) syncFromRecent(); + if (_timerCounter++ % 6 == 0) { + if (!gFFI.userModel.isLogin) return; + syncFromRecent(); + } }); } } Future pullAb({force = true, quiet = false}) async { debugPrint("pullAb, force:$force, quiet:$quiet"); - if (gFFI.userModel.userName.isEmpty) return; + if (!gFFI.userModel.isLogin) return; if (abLoading.value) return; if (!force && initialized) return; DateTime startTime = DateTime.now(); @@ -101,6 +104,9 @@ class AbModel { peers.add(Peer.fromJson(peer)); } } + if (isFull(false)) { + peers.removeRange(licensedDevices, peers.length); + } _saveCache(); // save on success } } @@ -442,7 +448,7 @@ class AbModel { } // Be careful with loop calls if (syncChanged && push) { - pushAb(toastIfSucc: false); + pushAb(toastIfSucc: false, toastIfFail: false); } else if (uiChanged) { peers.refresh(); }