diff options
author | Thomas Huang <tmashuang@users.noreply.github.com> | 2018-06-05 07:37:58 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-05 07:37:58 +0800 |
commit | e1cd3562cef92a78945056dc557d4228a72b119c (patch) | |
tree | 0d4a7cbe1c095085744ed27f59453667d5b41c88 /app/scripts/metamask-controller.js | |
parent | 750ec8769931f8db30ebb5e8e8bcc61816368800 (diff) | |
parent | c12b02b4af75d6d706d0b8cd9aeb07f18aa3037a (diff) | |
download | tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.tar tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.tar.gz tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.tar.bz2 tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.tar.lz tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.tar.xz tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.tar.zst tangerine-wallet-browser-e1cd3562cef92a78945056dc557d4228a72b119c.zip |
Merge pull request #4490 from MetaMask/v4.7.3
Version 4.7.3
Diffstat (limited to 'app/scripts/metamask-controller.js')
-rw-r--r-- | app/scripts/metamask-controller.js | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index 96f976568..c753fc06f 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -85,6 +85,7 @@ module.exports = class MetamaskController extends EventEmitter { this.preferencesController = new PreferencesController({ initState: initState.PreferencesController, initLangCode: opts.initLangCode, + getFirstTimeInfo: () => initState.firstTimeInfo, }) // currency controller @@ -356,7 +357,7 @@ module.exports = class MetamaskController extends EventEmitter { importAccountWithStrategy: nodeify(this.importAccountWithStrategy, this), // vault management - submitPassword: nodeify(keyringController.submitPassword, keyringController), + submitPassword: nodeify(this.submitPassword, this), // network management setProviderType: nodeify(networkController.setProviderType, networkController), @@ -474,6 +475,22 @@ module.exports = class MetamaskController extends EventEmitter { } } + /* + * Submits the user's password and attempts to unlock the vault. + * Also synchronizes the preferencesController, to ensure its schema + * is up to date with known accounts once the vault is decrypted. + * + * @param {string} password - The user's password + * @returns {Promise<object>} - The keyringController update. + */ + async submitPassword (password) { + await this.keyringController.submitPassword(password) + const accounts = await this.keyringController.getAccounts() + + await this.preferencesController.syncAddresses(accounts) + return this.keyringController.fullUpdate() + } + /** * @type Identity * @property {string} name - The account nickname. |