diff options
author | Kevin Serrano <kevgagser@gmail.com> | 2016-09-03 05:15:24 +0800 |
---|---|---|
committer | Kevin Serrano <kevgagser@gmail.com> | 2016-09-03 05:15:24 +0800 |
commit | 068bd7d40ac4f697c64b8e7f4045c42e31c94325 (patch) | |
tree | 391bcdef9f18a25198ba9a32d6f8efeb30119073 /app/scripts/lib/notifications.js | |
parent | f9f821e72650046466b9c1f0694a1cdb0c1e637c (diff) | |
parent | bdc7fd7c6f37f2e8a1d8a9f100115962b3fb0e01 (diff) | |
download | tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.tar tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.tar.gz tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.tar.bz2 tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.tar.lz tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.tar.xz tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.tar.zst tangerine-wallet-browser-068bd7d40ac4f697c64b8e7f4045c42e31c94325.zip |
Merge branch 'master' into livereload
Diffstat (limited to 'app/scripts/lib/notifications.js')
-rw-r--r-- | app/scripts/lib/notifications.js | 42 |
1 files changed, 24 insertions, 18 deletions
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) }) |