Merge pull request #2121 from BlueWallet/fix-save-button-disabled

FIX: save btn becomes enabled only after changes on view-edit-multisi…
This commit is contained in:
GLaDOS 2020-11-11 19:47:27 +00:00 committed by GitHub
commit 36e2dc14cc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -54,6 +54,7 @@ const ViewEditMultisigCosigners = () => {
const tempWallet = useRef(new MultisigHDWallet()); const tempWallet = useRef(new MultisigHDWallet());
const [wallet, setWallet] = useState(); const [wallet, setWallet] = useState();
const [isLoading, setIsLoading] = useState(true); const [isLoading, setIsLoading] = useState(true);
const [isSaveButtonDisabled, setIsSaveButtonDisabled] = useState(true);
const [currentlyEditingCosignerNum, setCurrentlyEditingCosignerNum] = useState(false); const [currentlyEditingCosignerNum, setCurrentlyEditingCosignerNum] = useState(false);
const [isProvideMnemonicsModalVisible, setIsProvideMnemonicsModalVisible] = useState(false); const [isProvideMnemonicsModalVisible, setIsProvideMnemonicsModalVisible] = useState(false);
const [isMnemonicsModalVisible, setIsMnemonicsModalVisible] = useState(false); const [isMnemonicsModalVisible, setIsMnemonicsModalVisible] = useState(false);
@ -117,12 +118,13 @@ const ViewEditMultisigCosigners = () => {
}, },
}); });
const onSave = () => { const onSave = async () => {
setIsLoading(true); setIsLoading(true);
// eslint-disable-next-line prefer-const // eslint-disable-next-line prefer-const
let newWallets = wallets.filter(w => { let newWallets = wallets.filter(w => {
return w.getID() !== walletId; return w.getID() !== walletId;
}); });
await wallet.fetchBalance();
newWallets.push(wallet); newWallets.push(wallet);
setWalletsWithNewOrder(newWallets); setWalletsWithNewOrder(newWallets);
goBack(); goBack();
@ -352,6 +354,7 @@ const ViewEditMultisigCosigners = () => {
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut); LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
setWallet(wallet); setWallet(wallet);
setIsProvideMnemonicsModalVisible(false); setIsProvideMnemonicsModalVisible(false);
setIsSaveButtonDisabled(false);
}; };
const xpubInsteadOfSeed = index => { const xpubInsteadOfSeed = index => {
@ -366,6 +369,7 @@ const ViewEditMultisigCosigners = () => {
wallet.addCosigner(xpub, newFp, path); wallet.addCosigner(xpub, newFp, path);
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut); LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
setWallet(wallet); setWallet(wallet);
setIsSaveButtonDisabled(false);
resolve(); resolve();
} catch (e) { } catch (e) {
alert(e.message); alert(e.message);
@ -454,7 +458,9 @@ const ViewEditMultisigCosigners = () => {
</SafeAreaView> </SafeAreaView>
); );
const footer = <BlueButtonHook disabled={vaultKeyData.isLoading || isLoading} title={loc._.save} onPress={onSave} />; const footer = (
<BlueButtonHook disabled={vaultKeyData.isLoading || isSaveButtonDisabled} title={loc._.save} onPress={onSave} />
);
return ( return (
<SafeAreaView style={[styles.root, stylesHook.root]}> <SafeAreaView style={[styles.root, stylesHook.root]}>