diff options
author | kumavis <kumavis@users.noreply.github.com> | 2017-01-22 02:06:50 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-01-22 02:06:50 +0800 |
commit | 74dc20bdf179cbd8b25f6fae007553784466e3ff (patch) | |
tree | 4b28d3230bf38c68b68e40efcb5b1bf810eacf3e /app/scripts/keyring-controller.js | |
parent | bc1615f032186e88aebfa9dac38039dcff263162 (diff) | |
parent | 247f7aad5e358fae33616fd310e695e06673dd19 (diff) | |
download | tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.tar tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.tar.gz tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.tar.bz2 tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.tar.lz tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.tar.xz tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.tar.zst tangerine-wallet-browser-74dc20bdf179cbd8b25f6fae007553784466e3ff.zip |
Merge branch 'dev' into obs-store2
Diffstat (limited to 'app/scripts/keyring-controller.js')
-rw-r--r-- | app/scripts/keyring-controller.js | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/app/scripts/keyring-controller.js b/app/scripts/keyring-controller.js index d4c0d863e..86c93f5a3 100644 --- a/app/scripts/keyring-controller.js +++ b/app/scripts/keyring-controller.js @@ -95,7 +95,6 @@ module.exports = class KeyringController extends EventEmitter { isInitialized: (!!wallet || !!vault), isUnlocked: Boolean(this.password), isDisclaimerConfirmed: this.configManager.getConfirmedDisclaimer(), - transactions: this.configManager.getTxList(), unconfMsgs: messageManager.unconfirmedMsgs(), messages: messageManager.getMsgList(), selectedAccount: address, @@ -173,7 +172,9 @@ module.exports = class KeyringController extends EventEmitter { // Used when creating a first vault, to allow confirmation. // Also used when revealing the seed words in the confirmation view. placeSeedWords () { - const firstKeyring = this.keyrings[0] + const hdKeyrings = this.keyrings.filter((keyring) => keyring.type === 'HD Key Tree') + const firstKeyring = hdKeyrings[0] + if (!firstKeyring) throw new Error('KeyringController - No HD Key Tree found') return firstKeyring.serialize() .then((serialized) => { const seedWords = serialized.mnemonic @@ -235,7 +236,10 @@ module.exports = class KeyringController extends EventEmitter { addNewKeyring (type, opts) { const Keyring = this.getKeyringClassForType(type) const keyring = new Keyring(opts) - return keyring.getAccounts() + return keyring.deserialize(opts) + .then(() => { + return keyring.getAccounts() + }) .then((accounts) => { this.keyrings.push(keyring) return this.setupAccounts(accounts) @@ -317,13 +321,11 @@ module.exports = class KeyringController extends EventEmitter { // This method signs tx and returns a promise for // TX Manager to update the state after signing - signTransaction (ethTx, selectedAddress, txId) { - const address = normalize(selectedAddress) - return this.getKeyringForAccount(address) + signTransaction (ethTx, _fromAddress) { + const fromAddress = normalize(_fromAddress) + return this.getKeyringForAccount(fromAddress) .then((keyring) => { - return keyring.signTransaction(address, ethTx) - }).then((tx) => { - return {tx, txId} + return keyring.signTransaction(fromAddress, ethTx) }) } // Add Unconfirmed Message @@ -400,6 +402,7 @@ module.exports = class KeyringController extends EventEmitter { }).then((rawSig) => { cb(null, rawSig) approvalCb(null, true) + messageManager.confirmMsg(msgId) return rawSig }) } catch (e) { |