Skip to content

Commit 9da45e7

Browse files
authored
Replace comma w dot (#998)
* Force US locale * Revert prev changes, use input formatters in amount field
1 parent d792dc8 commit 9da45e7

File tree

4 files changed

+24
-7
lines changed

4 files changed

+24
-7
lines changed

app/lib/helpers/form.dart

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import 'package:flutter/services.dart';
2+
3+
class CommaToDotTextFormatter extends TextInputFormatter {
4+
@override
5+
TextEditingValue formatEditUpdate(
6+
TextEditingValue oldValue, TextEditingValue newValue) {
7+
return newValue.copyWith(text: newValue.text.replaceAll(',', '.'));
8+
}
9+
}

app/lib/main.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,6 @@ Future<void> setGlobalValues() async {
5252

5353
Globals().emailVerified.value = (email['sei'] != null);
5454
Globals().phoneVerified.value = (phone['spi'] != null);
55-
5655
}
5756

5857
class MyApp extends ConsumerWidget {

app/lib/screens/wallets/bridge.dart

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
import 'package:bs58/bs58.dart';
22
import 'package:decimal/decimal.dart';
33
import 'package:flutter/material.dart';
4+
import 'package:flutter/services.dart';
45
import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart';
56
import 'package:flutter_riverpod/flutter_riverpod.dart';
7+
import 'package:threebotlogin/helpers/form.dart';
68
import 'package:threebotlogin/helpers/globals.dart';
79
import 'package:threebotlogin/helpers/transaction_helpers.dart';
810
import 'package:threebotlogin/models/wallet.dart';
@@ -239,16 +241,14 @@ class _WalletBridgeScreenState extends ConsumerState<WalletBridgeScreen> {
239241
Padding(
240242
padding: const EdgeInsets.symmetric(horizontal: 15.0),
241243
child: Row(
242-
crossAxisAlignment:
243-
CrossAxisAlignment.start,
244+
crossAxisAlignment: CrossAxisAlignment.start,
244245
children: <Widget>[
245246
Icon(
246247
Icons.info,
247248
color: Theme.of(context).colorScheme.primary,
248249
size: 16,
249250
),
250-
const SizedBox(
251-
width: 8),
251+
const SizedBox(width: 8),
252252
Expanded(
253253
child: Text(
254254
'This bridge currently only supports Stellar to Solana transfers.',
@@ -259,8 +259,7 @@ class _WalletBridgeScreenState extends ConsumerState<WalletBridgeScreen> {
259259
color:
260260
Theme.of(context).colorScheme.primary,
261261
),
262-
softWrap:
263-
true,
262+
softWrap: true,
264263
),
265264
),
266265
],
@@ -333,6 +332,11 @@ class _WalletBridgeScreenState extends ConsumerState<WalletBridgeScreen> {
333332
),
334333
keyboardType: const TextInputType.numberWithOptions(
335334
decimal: true),
335+
inputFormatters: [
336+
FilteringTextInputFormatter.allow(
337+
RegExp(r'[0-9.,]')),
338+
CommaToDotTextFormatter(),
339+
],
336340
controller: amountController,
337341
decoration: InputDecoration(
338342
labelText:

app/lib/screens/wallets/send.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import 'package:flutter/services.dart';
44
import 'package:flutter_keyboard_visibility/flutter_keyboard_visibility.dart';
55
import 'package:flutter_riverpod/flutter_riverpod.dart';
66
import 'package:mobile_scanner/mobile_scanner.dart';
7+
import 'package:threebotlogin/helpers/form.dart';
78
import 'package:threebotlogin/helpers/globals.dart';
89
import 'package:threebotlogin/helpers/logger.dart';
910
import 'package:threebotlogin/helpers/transaction_helpers.dart';
@@ -320,6 +321,10 @@ class _WalletSendScreenState extends ConsumerState<WalletSendScreen> {
320321
focusNode: textFieldFocusNode,
321322
keyboardType: const TextInputType.numberWithOptions(
322323
decimal: true),
324+
inputFormatters: [
325+
FilteringTextInputFormatter.allow(RegExp(r'[0-9.,]')),
326+
CommaToDotTextFormatter(),
327+
],
323328
controller: amountController,
324329
textInputAction: TextInputAction.done,
325330
decoration: InputDecoration(

0 commit comments

Comments
 (0)