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

Merge pull request #1634 from MetaMask/i784-SendTokenButton

Add send token button (link to TokenFactory)
This commit is contained in:
Thomas Huang 2017-06-28 10:09:58 -07:00 committed by GitHub
commit bd523102fe
2 changed files with 30 additions and 7 deletions

View File

@ -6,6 +6,7 @@
- Add list of popular tokens held to the account detail view. - Add list of popular tokens held to the account detail view.
- Add ability to add Tokens to token list. - Add ability to add Tokens to token list.
- Add a warning to JSON file import. - Add a warning to JSON file import.
- Add "send" link to token list, which goes to TokenFactory.
- Fix bug where slowly mined txs would sometimes be incorrectly marked as failed. - Fix bug where slowly mined txs would sometimes be incorrectly marked as failed.
- Fix bug where badge count did not reflect personal_sign pending messages. - Fix bug where badge count did not reflect personal_sign pending messages.
- Seed word confirmation wording is now scarier. - Seed word confirmation wording is now scarier.

View File

@ -18,12 +18,7 @@ TokenCell.prototype.render = function () {
return ( return (
h('li.token-cell', { h('li.token-cell', {
style: { cursor: network === '1' ? 'pointer' : 'default' }, style: { cursor: network === '1' ? 'pointer' : 'default' },
onClick: (event) => { onClick: this.view.bind(this, address, userAddress, network),
const url = urlFor(address, userAddress, network)
if (url) {
navigateTo(url)
}
},
}, [ }, [
h(Identicon, { h(Identicon, {
@ -33,16 +28,43 @@ TokenCell.prototype.render = function () {
}), }),
h('h3', `${string || 0} ${symbol}`), h('h3', `${string || 0} ${symbol}`),
h('span', { style: { flex: '1 0 auto' } }),
h('button', {
onClick: this.send.bind(this, address),
}, 'SEND'),
]) ])
) )
} }
TokenCell.prototype.send = function (address, event) {
event.preventDefault()
event.stopPropagation()
const url = tokenFactoryFor(address)
if (url) {
navigateTo(url)
}
}
TokenCell.prototype.view = function (address, userAddress, network, event) {
const url = etherscanLinkFor(address, userAddress, network)
if (url) {
navigateTo(url)
}
}
function navigateTo (url) { function navigateTo (url) {
global.platform.openWindow({ url }) global.platform.openWindow({ url })
} }
function urlFor (tokenAddress, address, network) { function etherscanLinkFor (tokenAddress, address, network) {
const prefix = prefixForNetwork(network) const prefix = prefixForNetwork(network)
return `https://${prefix}etherscan.io/token/${tokenAddress}?a=${address}` return `https://${prefix}etherscan.io/token/${tokenAddress}?a=${address}`
} }
function tokenFactoryFor (tokenAddress) {
return `https://tokenfactory.surge.sh/#/token/${tokenAddress}`
}