mirror of
https://github.com/zjs81/meshcore-open.git
synced 2026-04-20 22:13:48 +00:00
Sort direct repeaters by last updated time and SNR; limit to top three for improved path management dialog
This commit is contained in:
parent
52a578777d
commit
a68e1dd428
1 changed files with 15 additions and 8 deletions
|
|
@ -133,17 +133,24 @@ class _PathManagementDialog extends StatelessWidget {
|
|||
builder: (context, connector, pathService, _) {
|
||||
final currentContact = _resolveContact(connector);
|
||||
final paths = pathService.getRecentPaths(currentContact.publicKeyHex);
|
||||
final directRepeaters = List.of(connector.directRepeaters)
|
||||
..sort((a, b) => (b.snr).compareTo(a.snr));
|
||||
final directRepeater = directRepeaters.isEmpty
|
||||
|
||||
final RepeatersList = List.of(connector.directRepeaters)
|
||||
..sort((a, b) => b.lastUpdated.compareTo(a.lastUpdated));
|
||||
|
||||
final topSNRRepeaters = List.of(RepeatersList)
|
||||
..sort((a, b) => b.snr.compareTo(a.snr));
|
||||
|
||||
final topThreeRepeaters = topSNRRepeaters.take(3).toList();
|
||||
|
||||
final directRepeater = topThreeRepeaters.isEmpty
|
||||
? null
|
||||
: directRepeaters.first;
|
||||
final secondDirectRepeater = directRepeaters.length < 2
|
||||
: topThreeRepeaters.first;
|
||||
final secondDirectRepeater = topThreeRepeaters.length < 2
|
||||
? null
|
||||
: directRepeaters.elementAt(1);
|
||||
final thirdDirectRepeater = directRepeaters.length < 3
|
||||
: topThreeRepeaters.elementAt(1);
|
||||
final thirdDirectRepeater = topThreeRepeaters.length < 3
|
||||
? null
|
||||
: directRepeaters.elementAt(2);
|
||||
: topThreeRepeaters.elementAt(2);
|
||||
|
||||
return AlertDialog(
|
||||
title: Text(l10n.chat_pathManagement),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue