diff --git a/lib/models/paynym/paynym_account.dart b/lib/models/paynym/paynym_account.dart index 12351e3a5..133edc25d 100644 --- a/lib/models/paynym/paynym_account.dart +++ b/lib/models/paynym/paynym_account.dart @@ -14,6 +14,9 @@ class PaynymAccount { /// list of nymId final List following; + PaynymCode get nonSegwitPaymentCode => + codes.firstWhere((element) => !element.segwit); + PaynymAccount( this.nymID, this.nymName, diff --git a/lib/pages/paynym/add_new_paynym_follow_view.dart b/lib/pages/paynym/add_new_paynym_follow_view.dart index 68473fc7c..d89c3db92 100644 --- a/lib/pages/paynym/add_new_paynym_follow_view.dart +++ b/lib/pages/paynym/add_new_paynym_follow_view.dart @@ -447,7 +447,7 @@ class _AddNewPaynymFollowViewState child: PaynymCard( key: UniqueKey(), label: _searchResult!.nymName, - paymentCodeString: _searchResult!.codes.first.code, + paymentCodeString: _searchResult!.nonSegwitPaymentCode.code, walletId: widget.walletId, ), ), diff --git a/lib/pages/paynym/dialogs/paynym_qr_popup.dart b/lib/pages/paynym/dialogs/paynym_qr_popup.dart index 3ad985472..0f36436fa 100644 --- a/lib/pages/paynym/dialogs/paynym_qr_popup.dart +++ b/lib/pages/paynym/dialogs/paynym_qr_popup.dart @@ -55,7 +55,7 @@ class PaynymQrPopup extends StatelessWidget { child: Row( children: [ PayNymBot( - paymentCodeString: paynymAccount.codes.first.code, + paymentCodeString: paynymAccount.nonSegwitPaymentCode.code, size: isDesktop ? 56 : 36, ), const SizedBox( @@ -108,7 +108,7 @@ class PaynymQrPopup extends StatelessWidget { height: 6, ), Text( - paynymAccount.codes.first.code, + paynymAccount.nonSegwitPaymentCode.code, style: isDesktop ? STextStyles.desktopTextSmall(context) : STextStyles.infoSmall(context).copyWith( @@ -127,7 +127,7 @@ class PaynymQrPopup extends StatelessWidget { onTap: () async { await Clipboard.setData( ClipboardData( - text: paynymAccount.codes.first.code, + text: paynymAccount.nonSegwitPaymentCode.code, ), ); unawaited( @@ -150,7 +150,7 @@ class PaynymQrPopup extends StatelessWidget { QrImage( padding: const EdgeInsets.all(0), size: 130, - data: paynymAccount.codes.first.code, + data: paynymAccount.nonSegwitPaymentCode.code, foregroundColor: Theme.of(context).extension()!.textDark, ), diff --git a/lib/pages/paynym/paynym_claim_view.dart b/lib/pages/paynym/paynym_claim_view.dart index a26d4828e..7944688da 100644 --- a/lib/pages/paynym/paynym_claim_view.dart +++ b/lib/pages/paynym/paynym_claim_view.dart @@ -43,8 +43,9 @@ class _PaynymClaimViewState extends ConsumerState { // get wallet to access paynym calls final wallet = manager.wallet as PaynymWalletInterface; - final token = - await ref.read(paynymAPIProvider).token(myAccount.codes.first.code); + final token = await ref + .read(paynymAPIProvider) + .token(myAccount.nonSegwitPaymentCode.code); final signature = await wallet.signStringWithNotificationKey(token.value!); final pCodeSegwit = await wallet.getPaymentCode(isSegwit: true); diff --git a/lib/pages/paynym/paynym_home_view.dart b/lib/pages/paynym/paynym_home_view.dart index b989ba9c5..f0cb108cb 100644 --- a/lib/pages/paynym/paynym_home_view.dart +++ b/lib/pages/paynym/paynym_home_view.dart @@ -275,8 +275,7 @@ class _PaynymHomeViewState extends ConsumerState { paymentCodeString: ref .watch(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, ), ), @@ -298,8 +297,7 @@ class _PaynymHomeViewState extends ConsumerState { ref .watch(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, 12, 5), @@ -330,8 +328,7 @@ class _PaynymHomeViewState extends ConsumerState { text: ref .read(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, ), ); @@ -376,8 +373,7 @@ class _PaynymHomeViewState extends ConsumerState { ref .read(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, sharePositionOrigin: sharePositionOrigin); }, @@ -447,8 +443,7 @@ class _PaynymHomeViewState extends ConsumerState { paymentCodeString: ref .watch(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, ), ), @@ -473,8 +468,7 @@ class _PaynymHomeViewState extends ConsumerState { ref .watch(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, 12, 5), @@ -501,8 +495,7 @@ class _PaynymHomeViewState extends ConsumerState { text: ref .read(myPaynymAccountStateProvider.state) .state! - .codes - .first + .nonSegwitPaymentCode .code, ), ); diff --git a/lib/pages/send_view/send_view.dart b/lib/pages/send_view/send_view.dart index 4444aab75..b3d2a6b8a 100644 --- a/lib/pages/send_view/send_view.dart +++ b/lib/pages/send_view/send_view.dart @@ -458,6 +458,7 @@ class _SendViewState extends ConsumerState { final feeRate = ref.read(feeRateTypeStateProvider); txDataFuture = wallet.preparePaymentCodeSend( paymentCode: paymentCode, + isSegwit: widget.accountLite!.segwit, amount: amount, args: { "feeRate": feeRate, diff --git a/lib/pages/wallet_view/wallet_view.dart b/lib/pages/wallet_view/wallet_view.dart index 90af5d02d..b19d291fa 100644 --- a/lib/pages/wallet_view/wallet_view.dart +++ b/lib/pages/wallet_view/wallet_view.dart @@ -925,7 +925,7 @@ class _WalletViewState extends ConsumerState { // check if account exists and for matching code to see if claimed if (account.value != null && - account.value!.codes.first.claimed && + account.value!.nonSegwitPaymentCode.claimed && account.value!.segwit) { ref.read(myPaynymAccountStateProvider.state).state = account.value!; diff --git a/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_send.dart b/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_send.dart index 664fe0103..cf2ca1582 100644 --- a/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_send.dart +++ b/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_send.dart @@ -262,11 +262,12 @@ class _DesktopSendState extends ConsumerState { final wallet = manager.wallet as PaynymWalletInterface; final paymentCode = PaymentCode.fromPaymentCode( widget.accountLite!.code, - wallet.networkType, + networkType: wallet.networkType, ); final feeRate = ref.read(feeRateTypeStateProvider); txDataFuture = wallet.preparePaymentCodeSend( paymentCode: paymentCode, + isSegwit: widget.accountLite!.segwit, amount: amount, args: { "feeRate": feeRate, diff --git a/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_wallet_features.dart b/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_wallet_features.dart index 7f230abf7..aef5b8f00 100644 --- a/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_wallet_features.dart +++ b/lib/pages_desktop_specific/my_stack_view/wallet_view/sub_widgets/desktop_wallet_features.dart @@ -284,7 +284,7 @@ class _DesktopWalletFeaturesState extends ConsumerState { // check if account exists and for matching code to see if claimed if (account.value != null && - account.value!.codes.first.claimed && + account.value!.nonSegwitPaymentCode.claimed && account.value!.segwit) { ref.read(myPaynymAccountStateProvider.state).state = account.value!; diff --git a/lib/widgets/custom_buttons/paynym_follow_toggle_button.dart b/lib/widgets/custom_buttons/paynym_follow_toggle_button.dart index ba7bcf8ea..4c6733e96 100644 --- a/lib/widgets/custom_buttons/paynym_follow_toggle_button.dart +++ b/lib/widgets/custom_buttons/paynym_follow_toggle_button.dart @@ -75,8 +75,8 @@ class _PaynymFollowToggleButtonState // sign token with notification private key String signature = await wallet.signStringWithNotificationKey(token.value!); - var result = await ref.read(paynymAPIProvider).follow( - token.value!, signature, followedAccount.value!.codes.first.code); + var result = await ref.read(paynymAPIProvider).follow(token.value!, + signature, followedAccount.value!.nonSegwitPaymentCode.code); int i = 0; for (; @@ -88,8 +88,8 @@ class _PaynymFollowToggleButtonState // sign token with notification private key signature = await wallet.signStringWithNotificationKey(token.value!); - result = await ref.read(paynymAPIProvider).follow( - token.value!, signature, followedAccount.value!.codes.first.code); + result = await ref.read(paynymAPIProvider).follow(token.value!, signature, + followedAccount.value!.nonSegwitPaymentCode.code); await Future.delayed(const Duration(milliseconds: 200)); print("RRR result: $result"); @@ -116,8 +116,8 @@ class _PaynymFollowToggleButtonState PaynymAccountLite( followedAccount.value!.nymID, followedAccount.value!.nymName, - followedAccount.value!.codes.first.code, - followedAccount.value!.codes.first.segwit, + followedAccount.value!.nonSegwitPaymentCode.code, + followedAccount.value!.segwit, ), ); @@ -175,8 +175,8 @@ class _PaynymFollowToggleButtonState // sign token with notification private key String signature = await wallet.signStringWithNotificationKey(token.value!); - var result = await ref.read(paynymAPIProvider).unfollow( - token.value!, signature, followedAccount.value!.codes.first.code); + var result = await ref.read(paynymAPIProvider).unfollow(token.value!, + signature, followedAccount.value!.nonSegwitPaymentCode.code); int i = 0; for (; @@ -188,8 +188,8 @@ class _PaynymFollowToggleButtonState // sign token with notification private key signature = await wallet.signStringWithNotificationKey(token.value!); - result = await ref.read(paynymAPIProvider).unfollow( - token.value!, signature, followedAccount.value!.codes.first.code); + result = await ref.read(paynymAPIProvider).unfollow(token.value!, + signature, followedAccount.value!.nonSegwitPaymentCode.code); await Future.delayed(const Duration(milliseconds: 200)); print("unfollow RRR result: $result"); }