Skip to content
Snippets Groups Projects
Commit c9b06e0e authored by vjrj's avatar vjrj
Browse files

Don't change card name when offline or changing tabs

parent ff027994
No related branches found
No related tags found
No related merge requests found
......@@ -2,8 +2,6 @@ import 'dart:convert';
import 'dart:typed_data';
import 'package:durt/durt.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter_dotenv/flutter_dotenv.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'data/models/cesium_card.dart';
......@@ -64,10 +62,7 @@ class SharedPreferencesHelper {
CesiumCard buildCesiumCard({required String seed, required String pubKey}) {
return CesiumCard(
seed: seed,
pubKey: pubKey,
theme: CreditCardThemes.theme1,
name: dotenv.env['CARD_TEXT'] ?? tr('g1_wallet'));
seed: seed, pubKey: pubKey, theme: CreditCardThemes.theme1, name: '');
}
void addCesiumCard(CesiumCard cesiumCard) {
......
......@@ -5,6 +5,7 @@ import '../../../g1/api.dart';
import '../../../shared_prefs.dart';
import '../../logger.dart';
import '../../ui_helpers.dart';
import '../connectivity_widget_wrapper_wrapper.dart';
import 'card_text_style.dart';
class CardNameEditable extends StatefulWidget {
......@@ -26,29 +27,36 @@ class _CardNameEditableState extends State<CardNameEditable> {
@override
void initState() {
currentText = defValue;
final String localUsername = SharedPreferencesHelper().getName();
currentText = localUsername.isEmpty ? defValue : localUsername;
super.initState();
}
Future<String> _initValue() async {
final String localUsername = SharedPreferencesHelper().getName();
try {
String? name = await getCesiumPlusUser(pubKey);
logger(
'currentText: $currentText, localUsername: $localUsername, _previousValue: $_previousValue, retrieved_name: $name');
if (name != null) {
name = name.replaceAll(userNameSuffix, '');
_controller.text = name;
currentText = name;
SharedPreferencesHelper().setName(name: name);
} else {
_controller.text = '';
currentText = defValue;
SharedPreferencesHelper().setName(name: '');
final bool isConnected = await ConnectivityWidgetWrapperWrapper.isConnected;
if (isConnected) {
try {
String? name = await getCesiumPlusUser(pubKey);
logger(
'currentText: $currentText, localUsername: $localUsername, _previousValue: $_previousValue, retrieved_name: $name');
if (name != null) {
name = name.replaceAll(userNameSuffix, '');
_controller.text = name;
currentText = name;
SharedPreferencesHelper().setName(name: name);
} else {
_controller.text = '';
currentText = defValue;
SharedPreferencesHelper().setName(name: '');
}
} catch (e) {
logger(e);
_controller.text = localUsername;
currentText = localUsername;
}
} catch (e) {
logger(e);
} else {
// not connected, same an on exception
_controller.text = localUsername;
currentText = localUsername;
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment