aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Finlay <dan@danfinlay.com>2016-05-04 06:04:15 +0800
committerDan Finlay <dan@danfinlay.com>2016-05-04 06:04:15 +0800
commit9c6ec054b13f24e88b78ca4124b0d3a46234b1d7 (patch)
tree6409dd6ea4aee0f58e243959568a4dca3fd0e63d
parent46e100f595a3db7aaab913bc4c12f4d6c5d01cd5 (diff)
downloadtangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.tar
tangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.tar.gz
tangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.tar.bz2
tangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.tar.lz
tangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.tar.xz
tangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.tar.zst
tangerine-wallet-browser-9c6ec054b13f24e88b78ca4124b0d3a46234b1d7.zip
Show any pending txs when unlocking
Before the unlock action hard-routed to the home route, now it has a condition where it will show pending transactions instead.
-rw-r--r--ui/app/actions.js1
-rw-r--r--ui/app/app.js19
-rw-r--r--ui/app/conf-tx.js3
-rw-r--r--ui/app/reducers/app.js1
4 files changed, 20 insertions, 4 deletions
diff --git a/ui/app/actions.js b/ui/app/actions.js
index 72550ff15..072139e1a 100644
--- a/ui/app/actions.js
+++ b/ui/app/actions.js
@@ -113,7 +113,6 @@ function tryUnlockMetamask(password) {
dispatch(this.unlockFailed())
} else {
dispatch(this.unlockMetamask())
- dispatch(this.showAccountDetail(selectedAccount))
}
})
}
diff --git a/ui/app/app.js b/ui/app/app.js
index fce98d8e1..94c72a3c8 100644
--- a/ui/app/app.js
+++ b/ui/app/app.js
@@ -23,6 +23,7 @@ const ConfirmTxScreen = require('./conf-tx')
const ConfigScreen = require('./config')
const InfoScreen = require('./info')
const LoadingIndicator = require('./loading')
+const txHelper = require('../lib/tx-helper')
module.exports = connect(mapStateToProps)(App)
@@ -39,6 +40,8 @@ function mapStateToProps(state) {
activeAddress: state.appState.activeAddress,
transForward: state.appState.transForward,
seedWords: state.metamask.seedWords,
+ unconfTxs: state.metamask.unconfTxs,
+ unconfMsgs: state.metamask.unconfMsgs,
}
}
@@ -202,8 +205,20 @@ App.prototype.renderPrimary = function(state){
return h(CreateVaultScreen, {key: 'createVault'})
default:
- return h(AccountDetailScreen, {key: 'account-detail'})
- }
+ if (this.hasPendingTxs()) {
+ return h(ConfirmTxScreen, {key: 'confirm-tx'})
+ } else {
+ return h(AccountDetailScreen, {key: 'account-detail'})
+ }
+ }
+}
+
+App.prototype.hasPendingTxs = function() {
+ var state = this.props
+ var unconfTxs = state.unconfTxs
+ var unconfMsgs = state.unconfMsgs
+ var unconfTxList = txHelper(unconfTxs, unconfMsgs)
+ return unconfTxList.length > 0
}
function onOffToggle(state){
diff --git a/ui/app/conf-tx.js b/ui/app/conf-tx.js
index d49d1f84c..8ab79c3b9 100644
--- a/ui/app/conf-tx.js
+++ b/ui/app/conf-tx.js
@@ -38,7 +38,8 @@ ConfirmTxScreen.prototype.render = function() {
var unconfTxs = state.unconfTxs
var unconfMsgs = state.unconfMsgs
var unconfTxList = txHelper(unconfTxs, unconfMsgs)
- var txData = unconfTxList[state.index] || {}
+ var index = state.index !== undefined ? state.index : 0
+ var txData = unconfTxList[index] || {}
return (
diff --git a/ui/app/reducers/app.js b/ui/app/reducers/app.js
index fb03ffeee..14f92a8c5 100644
--- a/ui/app/reducers/app.js
+++ b/ui/app/reducers/app.js
@@ -108,6 +108,7 @@ function reduceApp(state, action) {
case actions.UNLOCK_METAMASK:
return extend(appState, {
+ currentView: {},
transForward: true,
warning: null,
})