CW-531-Bitcoin-Fees-issue (#1218)

* SegWit transaction size * [skip ci] fix electrum balances layout * fix tapping area

Serhii committed Dec 13, 2023 at 16:43 UTC faf151a4dc5213a395da8c63606ae07538f9d0a2
4 files changed +15 -7
cw_bitcoin/lib/electrum_balance.dart
+12 -6
@@ -4,7 +4,10 @@ import 'package:cw_bitcoin/bitcoin_amount_format.dart';
4 import 'package:cw_core/balance.dart';
5
6 class ElectrumBalance extends Balance {
7 - const ElectrumBalance({required this.confirmed, required this.unconfirmed, required this.frozen})
7 + const ElectrumBalance(
8 + {required this.confirmed,
9 + required this.unconfirmed,
10 + required this.frozen})
11 : super(confirmed, unconfirmed);
12
13 static ElectrumBalance? fromJSON(String? jsonSource) {
@@ -25,16 +28,19 @@ class ElectrumBalance extends Balance {
28 final int frozen;
29
30 @override
28 - String get formattedAvailableBalance => bitcoinAmountToString(amount: confirmed - frozen);
31 + String get formattedAvailableBalance =>
32 + bitcoinAmountToString(amount: confirmed - unconfirmed.abs() - frozen);
33
34 @override
31 - String get formattedAdditionalBalance => bitcoinAmountToString(amount: unconfirmed);
35 + String get formattedAdditionalBalance =>
36 + bitcoinAmountToString(amount: unconfirmed);
37
33 - String get formattedFrozenBalance {
38 + @override
39 + String get formattedUnAvailableBalance {
40 final frozenFormatted = bitcoinAmountToString(amount: frozen);
41 return frozenFormatted == '0.0' ? '' : frozenFormatted;
42 }
43
38 - String toJSON() =>
39 - json.encode({'confirmed': confirmed, 'unconfirmed': unconfirmed, 'frozen': frozen});
44 + String toJSON() => json.encode(
45 + {'confirmed': confirmed, 'unconfirmed': unconfirmed, 'frozen': frozen});
46 }
cw_bitcoin/lib/electrum_wallet.dart
+1 -1
@@ -82,7 +82,7 @@ abstract class ElectrumWalletBase
82 bitcoin.HDWallet.fromSeed(seedBytes).derivePath("m/44'/145'/0'/0");
83
84 static int estimatedTransactionSize(int inputsCount, int outputsCounts) =>
85 - inputsCount * 146 + outputsCounts * 33 + 8;
85 + inputsCount * 68 + outputsCounts * 34 + 10;
86
87 final bitcoin.HDWallet hd;
88 final String mnemonic;
lib/src/screens/contact/contact_list_page.dart
+1
@@ -135,6 +135,7 @@ class ContactListPage extends BasePage {
135 await showBar<void>(context, S.of(context).copied_to_clipboard);
136 }
137 },
138 + behavior: HitTestBehavior.opaque,
139 child: Container(
140 padding: const EdgeInsets.only(top: 16, bottom: 16, right: 24),
141 child: Row(
lib/src/screens/dashboard/widgets/home_screen_account_widget.dart
+1
@@ -18,6 +18,7 @@ class HomeScreenAccountWidget extends StatelessWidget {
18 context: context,
19 builder: (_) => getIt.get<MoneroAccountListPage>());
20 },
21 + behavior: HitTestBehavior.opaque,
22 child: Container(
23 height: 100.0,
24 child: Row(