From 671ca33abb93fafeb55a18543e81942c5963da8e Mon Sep 17 00:00:00 2001 From: Dan Finlay <dan@danfinlay.com> Date: Tue, 23 Aug 2016 15:44:50 -0700 Subject: Close notification on opening main UI --- app/scripts/lib/notifications.js | 11 +++++++++-- app/scripts/popup.js | 7 +++++++ 2 files changed, 16 insertions(+), 2 deletions(-) (limited to 'app') diff --git a/app/scripts/lib/notifications.js b/app/scripts/lib/notifications.js index c8ecad805..dcb946845 100644 --- a/app/scripts/lib/notifications.js +++ b/app/scripts/lib/notifications.js @@ -1,13 +1,14 @@ const extension = require('./extension') const notifications = { - show: showNotification, + show, getPopup, + closePopup, } module.exports = notifications window.METAMASK_NOTIFIER = notifications -function showNotification() { +function show () { getPopup((popup) => { if (popup) { return extension.windows.update(popup.id, { focused: true }) @@ -39,3 +40,9 @@ function getPopup(cb) { }) } +function closePopup() { + getPopup((popup) => { + if (!popup) return + extension.windows.remove(popup.id, console.error) + }) +} diff --git a/app/scripts/popup.js b/app/scripts/popup.js index 4c729e227..90b90a7af 100644 --- a/app/scripts/popup.js +++ b/app/scripts/popup.js @@ -11,6 +11,7 @@ const StreamProvider = require('web3-stream-provider') const setupMultiplex = require('./lib/stream-utils.js').setupMultiplex const isPopupOrNotification = require('./lib/is-popup-or-notification') const extension = require('./lib/extension') +const notification = require('./lib/notifications') // setup app var css = MetaMaskUiCss() @@ -25,6 +26,7 @@ function connectToAccountManager (cb) { // setup communication with background var name = isPopupOrNotification() + closePopupIfOpen(name) window.METAMASK_UI_TYPE = name var pluginPort = extension.runtime.connect({ name }) var portStream = new PortStream(pluginPort) @@ -98,3 +100,8 @@ function setupApp (err, opts) { }) } +function closePopupIfOpen(name) { + if (name !== 'notification') { + notification.closePopup() + } +} -- cgit v1.2.3