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; Directory walletsDirectory;
String appVersion; String appVersion;
SharedPreferences prefs; SharedPreferences prefs;
String endPointGVA;

View File

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

View File

@ -1,5 +1,6 @@
import 'package:flutter/foundation.dart'; import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:gecko/globals.dart';
import 'package:graphql_flutter/graphql_flutter.dart'; import 'package:graphql_flutter/graphql_flutter.dart';
import 'package:permission_handler/permission_handler.dart'; import 'package:permission_handler/permission_handler.dart';
import 'package:sentry/sentry.dart' as sentry; import 'package:sentry/sentry.dart' as sentry;
@ -14,6 +15,7 @@ class HistoryProvider with ChangeNotifier {
final TextEditingController _outputPubkey = new TextEditingController(); final TextEditingController _outputPubkey = new TextEditingController();
bool isTheEnd = false; bool isTheEnd = false;
List transBC; List transBC;
bool isFirstBuild = true;
Future scan() async { Future scan() async {
await Permission.camera.request(); await Permission.camera.request();
@ -144,6 +146,24 @@ class HistoryProvider with ChangeNotifier {
return opts; 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() { void resetdHistory() {
this._outputPubkey.text = ''; this._outputPubkey.text = '';
notifyListeners(); notifyListeners();

View File

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