diff --git a/runtime-examples/README.md b/runtime-examples/README.md new file mode 100644 index 0000000..bdc9bce --- /dev/null +++ b/runtime-examples/README.md @@ -0,0 +1,14 @@ +## What it does + +Trigger an install notification when you install it. On the browser action text is +shown showing when the background page was last loaded in minutes and seconds. + +Clicking the browser action triggers a reload and updates the background page load time. + +The notifications show the version of the extension by fetching the manifest. + +## What it shows + +Demonstration of some runtime and notification APIs. + +Icon is from: https://www.iconfinder.com/icons/172151/run_icon#size=128 diff --git a/runtime-examples/background.js b/runtime-examples/background.js new file mode 100644 index 0000000..516f094 --- /dev/null +++ b/runtime-examples/background.js @@ -0,0 +1,17 @@ +let loadTime = new Date(); +let manifest = browser.runtime.getManifest(); + +function onInstalledNotification(details) { + browser.notifications.create('onInstalled', { + title: `Runtime Examples version: ${manifest.version}`, + message: `onInstalled has been called, background page loaded at ${loadTime.getHours()}:${loadTime.getMinutes()}`, + type: 'basic' + }); +} + +function onClick() { + browser.runtime.reload(); +} + +browser.browserAction.onClicked.addListener(onClick); +browser.runtime.onInstalled.addListener(onInstalledNotification); diff --git a/runtime-examples/manifest.json b/runtime-examples/manifest.json new file mode 100644 index 0000000..3ea94b5 --- /dev/null +++ b/runtime-examples/manifest.json @@ -0,0 +1,17 @@ +{ + "browser_action": { + "default_icon": "run.png" + }, + "description": "Demonstration of some runtime APIs", + "homepage_url": "https://github.com/mdn/webextensions-examples/tree/master/runtime-examples", + "manifest_version": 2, + "name": "Runtime examples", + "version": "1.0", + "permissions": ["notifications"], + "background": { + "scripts": ["background.js"] + }, + "icons": { + "128": "run.png" + } +} diff --git a/runtime-examples/run.png b/runtime-examples/run.png new file mode 100644 index 0000000..aaeeff6 Binary files /dev/null and b/runtime-examples/run.png differ