Improve node selection; Notification for selected node

This commit is contained in:
poka 2021-01-30 19:00:31 +01:00
parent 4aecbd23be
commit bfd5c666a8
5 changed files with 33 additions and 6 deletions

View File

@ -5,3 +5,4 @@ Directory appPath;
Directory walletsDirectory;
String appVersion;
SharedPreferences prefs;
String endPointGVA;

View File

@ -27,7 +27,7 @@ Future<void> main() async {
appVersion = await _homeProvider.getAppVersion();
prefs = await SharedPreferences.getInstance();
String randomEndpoint; // = await getRandomEndpoint();
String _randomEndpoint;
int i = 0;
do {
if (i >= 5) {
@ -38,9 +38,11 @@ Future<void> main() async {
print(i.toString() + ' ème essai de recherche de endpoint GVA.');
await Future.delayed(Duration(milliseconds: 300));
}
randomEndpoint = await _homeProvider.getRandomEndpoint();
_randomEndpoint = await _homeProvider.getRandomEndpoint();
i++;
} while (randomEndpoint == 'HS');
} while (_randomEndpoint == 'HS');
endPointGVA = _randomEndpoint;
if (kReleaseMode && enableSentry) {
await SentryFlutter.init(
@ -48,13 +50,13 @@ Future<void> main() async {
options.dsn =
'https://c09587b46eaa42e8b9fda28d838ed180@o496840.ingest.sentry.io/5572110';
},
appRunner: () => runApp(Gecko(randomEndpoint)),
appRunner: () => runApp(Gecko(_randomEndpoint)),
);
} else {
print('Debug mode enabled: No sentry alerte');
runApp(Gecko(
randomEndpoint,
_randomEndpoint,
));
}
}

View File

@ -1,5 +1,6 @@
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:gecko/globals.dart';
import 'package:graphql_flutter/graphql_flutter.dart';
import 'package:permission_handler/permission_handler.dart';
import 'package:sentry/sentry.dart' as sentry;
@ -14,6 +15,7 @@ class HistoryProvider with ChangeNotifier {
final TextEditingController _outputPubkey = new TextEditingController();
bool isTheEnd = false;
List transBC;
bool isFirstBuild = true;
Future scan() async {
await Permission.camera.request();
@ -144,6 +146,24 @@ class HistoryProvider with ChangeNotifier {
return opts;
}
snackNode(context) {
if (isFirstBuild) {
String _message;
print('AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA');
print(endPointGVA);
if (endPointGVA == 'HS') {
_message =
"Aucun noeud Duniter disponible, veuillez réessayer ultérieurement";
} else {
_message = "Vous êtes connecté au noeud\n${endPointGVA.split('/')[2]}";
}
final snackBar =
SnackBar(content: Text(_message), duration: Duration(seconds: 2));
Scaffold.of(context).showSnackBar(snackBar);
isFirstBuild = false;
}
}
void resetdHistory() {
this._outputPubkey.text = '';
notifyListeners();

View File

@ -25,6 +25,10 @@ class HistoryScreen extends StatelessWidget with ChangeNotifier {
HistoryProvider _historyProvider = Provider.of<HistoryProvider>(context);
this._outputPubkey.text = _historyProvider.pubkey;
print('Build pubkey : ' + _historyProvider.pubkey);
// _historyProvider.snackNode(context);
WidgetsBinding.instance.addPostFrameCallback((_) {
_historyProvider.snackNode(context);
});
return Scaffold(
floatingActionButton: Container(
height: 80.0,

View File

@ -5,7 +5,7 @@ description: A new Flutter project.
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
version: 0.0.0+15
version: 0.0.1+0
environment:
sdk: ">=2.7.0 <3.0.0"