Skip to content
Snippets Groups Projects
Select Git revision
  • 6ead396a5d3f12dcd58317601f593b80c4e46438
  • main default protected
  • release/1.1
  • encrypt_comments
  • mnemonic_dewif
  • authors_rules
  • 0.14
  • rtd
  • 1.2.1 protected
  • 1.2.0 protected
  • 1.1.1 protected
  • 1.1.0 protected
  • 1.0.0 protected
  • 1.0.0rc1 protected
  • 1.0.0rc0 protected
  • 1.0.0-rc protected
  • 0.62.0 protected
  • 0.61.0 protected
  • 0.60.1 protected
  • 0.58.1 protected
  • 0.60.0 protected
  • 0.58.0 protected
  • 0.57.0 protected
  • 0.56.0 protected
  • 0.55.1 protected
  • 0.55.0 protected
  • 0.54.3 protected
  • 0.54.2 protected
28 results

test_block.py

Blame
  • payment_popup.dart 26.28 KiB
    // ignore_for_file: use_build_context_synchronously
    
    import 'package:easy_localization/easy_localization.dart';
    import 'package:flutter/material.dart';
    import 'package:flutter/services.dart';
    import 'package:gecko/globals.dart';
    import 'package:gecko/models/scale_functions.dart';
    import 'package:gecko/models/text_input_formaters.dart';
    import 'package:gecko/models/wallet_data.dart';
    import 'package:gecko/models/widgets_keys.dart';
    import 'package:gecko/providers/my_wallets.dart';
    import 'package:gecko/providers/substrate_sdk.dart';
    import 'package:gecko/providers/wallet_options.dart';
    import 'package:gecko/providers/wallets_profiles.dart';
    import 'package:gecko/screens/activity.dart';
    import 'package:gecko/utils.dart';
    import 'package:gecko/widgets/balance.dart';
    import 'package:gecko/widgets/name_by_address.dart';
    import 'package:provider/provider.dart';
    import 'package:url_launcher/url_launcher.dart';
    import 'package:uuid/uuid.dart';
    
    void paymentPopup(BuildContext context, String toAddress, String? username) {
      final walletViewProvider = Provider.of<WalletsProfilesProvider>(context, listen: false);
      final myWalletProvider = Provider.of<MyWalletsProvider>(context, listen: false);
    
      double fees = 0;
      const double shapeSize = 16;
      var defaultWallet = myWalletProvider.getDefaultWallet();
      bool canValidate = false;
      final amountFocus = FocusNode();
      final commentFocus = FocusNode();
    
      void resetState() {
        walletViewProvider.payAmount.text = '';
        walletViewProvider.isCommentVisible = false;
        walletViewProvider.comment = '';
        walletViewProvider.payComment.text = '';
      }
    
      resetState();
    
      Future executeTransfert() async {
        Navigator.pop(context);
        if (!await myWalletProvider.askPinCode()) return;
    
        // Payment workflow !
        final sub = Provider.of<SubstrateSdk>(context, listen: false);
        final acc = sub.getCurrentKeyPair();
    
        final transactionId = const Uuid().v4();
    
        sub.pay(
          fromAddress: acc.address!,
          destAddress: toAddress,
          amount: double.parse(walletViewProvider.payAmount.text),
          password: myWalletProvider.pinCode,
          transactionId: transactionId,
          comment: walletViewProvider.comment,
        );
    
        Navigator.push(
          context,
          MaterialPageRoute(builder: (context) {
            return ActivityScreen(
              address: acc.address!,
              transactionId: transactionId,
              comment: walletViewProvider.comment,
            );
          }),