Skip to content
Snippets Groups Projects
importWallet.dart 11.40 KiB
import 'dart:async';
import 'package:flutter/services.dart';
import 'package:gecko/models/generateWallets.dart';
import 'package:flutter/material.dart';
import 'package:gecko/models/myWallets.dart';
import 'package:gecko/models/walletOptions.dart';
import 'package:provider/provider.dart';

class ImportWalletScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    GlobalKey _toolTipSecret = GlobalKey();
    Timer _debounce;
    GenerateWalletsProvider _generateWalletProvider =
        Provider.of<GenerateWalletsProvider>(context);
    MyWalletsProvider _myWalletProvider =
        Provider.of<MyWalletsProvider>(context);
    WalletOptionsProvider _walletOptions =
        Provider.of<WalletOptionsProvider>(context);

        _generateWalletProvider.showPinIfEmpty();

    return WillPopScope(
        onWillPop: () {
          _generateWalletProvider.cesiumID.text = '';
          _generateWalletProvider.cesiumPWD.text = '';
          _generateWalletProvider.cesiumPubkey.text = '';
          _generateWalletProvider.pin.text = '';
          _generateWalletProvider.canImport = false;
          _generateWalletProvider.isPinChanged = false;
          _generateWalletProvider.isCesiumIDVisible = false;
          _generateWalletProvider.isCesiumPWDVisible = false;
          _generateWalletProvider.reloadBuild();
          return Future<bool>.value(true);
        },
        child: Scaffold(
            appBar: AppBar(
                leading: IconButton(
                    icon: Icon(Icons.arrow_back, color: Colors.black),
                    onPressed: () {
                      _generateWalletProvider.cesiumID.text = '';
                      _generateWalletProvider.cesiumPWD.text = '';
                      _generateWalletProvider.cesiumPubkey.text = '';
                      _generateWalletProvider.pin.text = '';
                      _generateWalletProvider.canImport = false;
                      _generateWalletProvider.isPinChanged = false;
                      _generateWalletProvider.isCesiumIDVisible = false;
                      _generateWalletProvider.isCesiumPWDVisible = false;
                      _generateWalletProvider.reloadBuild();
                      Navigator.of(context).pop();
                    }),
                title: SizedBox(
                  height: 22,
                  child: Text('Importer un portefeuille'),
                )),
            body: Builder(
                builder: (ctx) => SafeArea(
                      child: Column(children: <Widget>[
                        SizedBox(height: 20),
                        TextFormField(
                          onChanged: (text) {
                            if (_debounce?.isActive ?? false)
                              //   _generateWalletProvider.canImport = false;
                              // _generateWalletProvider.reloadBuild();
                              _debounce.cancel();
                            _debounce =
                                Timer(const Duration(milliseconds: 200), () {
                              print("ID Cesium tappé: $text");
                              _generateWalletProvider
                                  .generateCesiumWalletPubkey(text,