1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00

Merge pull request #1893 from MetaMask/readd-loose

Re-add loose label onto accounts.
This commit is contained in:
Thomas Huang 2017-09-07 12:57:56 -07:00 committed by GitHub
commit a27a7e22f2
6 changed files with 30 additions and 5 deletions

View File

@ -1,6 +1,7 @@
# Changelog
## Current Master
- Readded loose keyring label back into the account list.
## 3.9.12 2017-9-6

View File

@ -171,9 +171,9 @@ class KeyringController extends EventEmitter {
return this.setupAccounts(checkedAccounts)
})
.then(() => this.persistAllKeyrings())
.then(() => this._updateMemStoreKeyrings())
.then(() => this.fullUpdate())
.then(() => {
this._updateMemStoreKeyrings()
return keyring
})
}
@ -208,6 +208,7 @@ class KeyringController extends EventEmitter {
return selectedKeyring.addAccounts(1)
.then(this.setupAccounts.bind(this))
.then(this.persistAllKeyrings.bind(this))
.then(this._updateMemStoreKeyrings.bind(this))
.then(this.fullUpdate.bind(this))
}

View File

@ -42,6 +42,7 @@ function mapStateToProps (state) {
identities,
accounts,
address,
keyrings,
} = state.metamask
const selected = address || Object.keys(accounts)[0]
@ -69,6 +70,7 @@ function mapStateToProps (state) {
// state needed to get account dropdown temporarily rendering from app bar
identities,
selected,
keyrings,
}
}
@ -187,6 +189,7 @@ App.prototype.renderAppBar = function () {
identities: this.props.identities,
selected: this.props.currentView.context,
network: this.props.network,
keyrings: this.props.keyrings,
}, []),
// hamburger

View File

@ -22,12 +22,19 @@ class AccountDropdowns extends Component {
}
renderAccounts () {
const { identities, selected } = this.props
const { identities, selected, keyrings } = this.props
return Object.keys(identities).map((key, index) => {
const identity = identities[key]
const isSelected = identity.address === selected
const simpleAddress = identity.address.substring(2).toLowerCase()
const keyring = keyrings.find((kr) => {
return kr.accounts.includes(simpleAddress) ||
kr.accounts.includes(identity.address)
})
return h(
DropdownMenuItem,
{
@ -51,6 +58,7 @@ class AccountDropdowns extends Component {
},
},
),
this.indicateIfLoose(keyring),
h('span', {
style: {
marginLeft: '20px',
@ -67,6 +75,14 @@ class AccountDropdowns extends Component {
})
}
indicateIfLoose (keyring) {
try { // Sometimes keyrings aren't loaded yet:
const type = keyring.type
const isLoose = type !== 'HD Key Tree'
return isLoose ? h('.keyring-label', 'LOOSE') : null
} catch (e) { return }
}
renderAccountSelector () {
const { actions } = this.props
const { accountSelectorActive } = this.state
@ -145,6 +161,8 @@ class AccountDropdowns extends Component {
)
}
renderAccountOptions () {
const { actions } = this.props
const { optionsMenuActive } = this.state
@ -278,6 +296,7 @@ AccountDropdowns.defaultProps = {
AccountDropdowns.propTypes = {
identities: PropTypes.objectOf(PropTypes.object),
selected: PropTypes.string,
keyrings: PropTypes.array,
}
const mapDispatchToProps = (dispatch) => {

View File

@ -32,7 +32,7 @@ class Dropdown extends Component {
'style',
`
li.dropdown-menu-item:hover { color:rgb(225, 225, 225); }
li.dropdown-menu-item { color: rgb(185, 185, 185); }
li.dropdown-menu-item { color: rgb(185, 185, 185); position: relative }
`
),
...children,

View File

@ -215,12 +215,13 @@ hr.horizontal-line {
z-index: 1;
font-size: 11px;
background: rgba(255,0,0,0.8);
bottom: -47px;
color: white;
bottom: 0px;
left: -8px;
border-radius: 10px;
height: 20px;
min-width: 20px;
position: relative;
position: absolute;
display: flex;
align-items: center;
justify-content: center;