From 891e17c44c9a8ff8b2c794f534018f727dd25d5d Mon Sep 17 00:00:00 2001 From: kumavis Date: Fri, 2 Sep 2016 13:29:47 -0700 Subject: notif - use standard err-first callback style --- app/scripts/lib/notifications.js | 42 +++++++++++++++++++++++----------------- 1 file changed, 24 insertions(+), 18 deletions(-) (limited to 'app/scripts/lib') diff --git a/app/scripts/lib/notifications.js b/app/scripts/lib/notifications.js index df4fe73dd..4e3f7558c 100644 --- a/app/scripts/lib/notifications.js +++ b/app/scripts/lib/notifications.js @@ -9,20 +9,26 @@ module.exports = notifications window.METAMASK_NOTIFIER = notifications function show () { - getWindows((windows) => { + getPopup((err, popup) => { + if (err) throw err - if (windows.length > 0) { - const win = windows[0] - return extension.windows.update(win.id, { focused: true }) - } + if (popup) { + + // bring focus to existing popup + extension.windows.update(popup.id, { focused: true }) + + } else { - extension.windows.create({ - url: 'notification.html', - type: 'popup', - focused: true, - width: 360, - height: 500, - }) + // create new popup + extension.windows.create({ + url: 'notification.html', + type: 'popup', + focused: true, + width: 360, + height: 500, + }) + + } }) } @@ -38,19 +44,19 @@ function getWindows(cb) { } function getPopup(cb) { - getWindows((windows) => { - cb(getPopupIn(windows)) + getWindows((err, windows) => { + if (err) throw err + cb(null, getPopupIn(windows)) }) } function getPopupIn(windows) { - return windows ? windows.find((win) => { - return win.type === 'popup' - }) : null + return windows ? windows.find((win) => win.type === 'popup') : null } function closePopup() { - getPopup((popup) => { + getPopup((err, popup) => { + if (err) throw err if (!popup) return extension.windows.remove(popup.id, console.error) }) -- cgit v1.2.3