Skip to content

Commit

Permalink
Merge pull request #666 from MetaMask/i#626
Browse files Browse the repository at this point in the history
Dont generate a popup notification for transactions from within metmask-extension
  • Loading branch information
kumavis committed Sep 14, 2016
2 parents b2103cb + a0bfdfe commit d3bd623
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 17 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

## Current Master

- Fixed bug where if you send a transaction from within MetaMask extension the
popup notification opens up.

## 2.12.0 2016-09-14

- Add a QR button to the Account detail screen
Expand Down
25 changes: 9 additions & 16 deletions app/scripts/background.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,31 +10,22 @@ const MetamaskController = require('./metamask-controller')
const extension = require('./lib/extension')

const STORAGE_KEY = 'metamask-config'

var popupIsOpen = false

const controller = new MetamaskController({
// User confirmation callbacks:
showUnconfirmedMessage,
unlockAccountMessage,
showUnconfirmedTx,
showUnconfirmedMessage: triggerUi,
unlockAccountMessage: triggerUi,
showUnconfirmedTx: triggerUi,
// Persistence Methods:
setData,
loadData,
})
const idStore = controller.idStore

function unlockAccountMessage () {
notification.show()
}

function showUnconfirmedMessage (msgParams, msgId) {
notification.show()
function triggerUi () {
if (!popupIsOpen) notification.show()
}

function showUnconfirmedTx (txParams, txData, onTxDoneCb) {
notification.show()
}

// On first install, open a window to MetaMask website to how-it-works.

extension.runtime.onInstalled.addListener(function (details) {
Expand All @@ -53,7 +44,8 @@ function connectRemote (remotePort) {
var portStream = new PortStream(remotePort)
if (isMetaMaskInternalProcess) {
// communication with popup
setupTrustedCommunication(portStream, 'MetaMask')
popupIsOpen = remotePort.name === 'popup'
setupTrustedCommunication(portStream, 'MetaMask', remotePort.name)
} else {
// communication with page
var originDomain = urlUtil.parse(remotePort.sender.url).hostname
Expand Down Expand Up @@ -95,6 +87,7 @@ function setupControllerConnection (stream) {
// teardown on disconnect
eos(stream, () => {
controller.ethStore.removeListener('update', controller.sendUpdate.bind(controller))
popupIsOpen = false
})
})
}
Expand Down
4 changes: 3 additions & 1 deletion ui/app/conf-tx.js
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,9 @@ ConfirmTxScreen.prototype.goHome = function (event) {
}

function warningIfExists (warning) {
if (warning) {
if (warning &&
// Do not display user rejections on this screen:
warning.indexOf('User denied transaction signature') === -1) {
return h('span.error', { style: { margin: 'auto' } }, warning)
}
}

0 comments on commit d3bd623

Please sign in to comment.