fix pow node showing up twice

This commit is contained in:
fosse 2023-08-18 09:27:09 -04:00
parent 788c66bcf3
commit a8ed087a9f
3 changed files with 10 additions and 7 deletions

View file

@ -260,8 +260,7 @@ Node? getNanoDefaultNode({required Box<Node> nodes}) {
PowNode? getNanoDefaultPowNode({required Box<PowNode> nodes}) {
return nodes.values.firstWhereOrNull((PowNode node) => node.uriRaw == nanoDefaultPowNodeUri) ??
nodes.values
.firstWhereOrNull((node) => (node.type == WalletType.nano));
nodes.values.firstWhereOrNull((node) => (node.type == WalletType.nano));
}
Node getMoneroDefaultNode({required Box<Node> nodes}) {
@ -433,7 +432,8 @@ Future<void> changeDefaultMoneroNode(
}
}
Future<void> checkCurrentNodes(Box<Node> nodeSource, Box<PowNode> powNodeSource, SharedPreferences sharedPreferences) async {
Future<void> checkCurrentNodes(
Box<Node> nodeSource, Box<PowNode> powNodeSource, SharedPreferences sharedPreferences) async {
final currentMoneroNodeId = sharedPreferences.getInt(PreferencesKey.currentNodeIdKey);
final currentBitcoinElectrumSeverId =
sharedPreferences.getInt(PreferencesKey.currentBitcoinElectrumSererIdKey);
@ -497,8 +497,12 @@ Future<void> checkCurrentNodes(Box<Node> nodeSource, Box<PowNode> powNodeSource,
}
if (currentNanoPowNodeServer == null) {
final node = PowNode(uri: nanoDefaultPowNodeUri, type: WalletType.nano);
await powNodeSource.add(node);
PowNode? node = powNodeSource.values
.firstWhereOrNull((node) => node.uri.toString() == nanoDefaultPowNodeUri);
if (node == null) {
node = PowNode(uri: nanoDefaultPowNodeUri, type: WalletType.nano);
await powNodeSource.add(node);
}
await sharedPreferences.setInt(PreferencesKey.currentNanoPowNodeIdKey, node.key as int);
}
}

View file

@ -42,6 +42,7 @@ class ManagePowNodesPage extends BasePage {
sectionCount: 1,
dividerPadding: EdgeInsets.symmetric(horizontal: 24),
itemCounter: (int sectionIndex) {
print(nodeListViewModel.nodes);
return nodeListViewModel.nodes.length;
},
itemBuilder: (_, index) {

View file

@ -71,8 +71,6 @@ abstract class PowNodeListViewModelBase with Store {
@action
void _bindNodes() {
nodes.clear();
_nodeSource.values.forEach((node) {
});
_nodeSource.bindToList(
nodes,
filter: (val) => val.type == _appStore.wallet!.type,