aboutsummaryrefslogtreecommitdiff
path: root/src/background/presenters/NotifyPresenter.js
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2019-02-15 21:01:12 +0900
committerShin'ya Ueoka <ueokande@i-beam.org>2019-02-25 21:51:48 +0900
commitf961c205a7afbcbfc4cc585fbb0362796043f1a1 (patch)
tree1c8d1394cc802a995cd697aba44006886251c9fb /src/background/presenters/NotifyPresenter.js
parentdfeb7e75498384af5e24255ee0fe7f8af37ac489 (diff)
Use onInstalled event
Diffstat (limited to 'src/background/presenters/NotifyPresenter.js')
-rw-r--r--src/background/presenters/NotifyPresenter.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/background/presenters/NotifyPresenter.js b/src/background/presenters/NotifyPresenter.js
new file mode 100644
index 0000000..a81f227
--- /dev/null
+++ b/src/background/presenters/NotifyPresenter.js
@@ -0,0 +1,23 @@
+const NOTIFICATION_ID = 'vimvixen-update';
+
+export default class NotifyPresenter {
+ notify(title, message, onclick) {
+ const listener = (id) => {
+ if (id !== NOTIFICATION_ID) {
+ return;
+ }
+
+ onclick();
+
+ browser.notifications.onClicked.removeListener(listener);
+ };
+ browser.notifications.onClicked.addListener(listener);
+
+ return browser.notifications.create(NOTIFICATION_ID, {
+ 'type': 'basic',
+ 'iconUrl': browser.extension.getURL('resources/icon_48x48.png'),
+ title,
+ message,
+ });
+ }
+}