Add notification for incompatible bridge versions on init

This commit is contained in:
hensm
2020-05-01 17:22:34 +01:00
parent 967001ca0b
commit 11268d3748
2 changed files with 37 additions and 1 deletions

View File

@@ -5,6 +5,7 @@ import loadSender from "../lib/loadSender";
import logger from "../lib/logger";
import messaging from "../lib/messaging";
import options from "../lib/options";
import bridge from "../lib/bridge";
import { getChromeUserAgent } from "../lib/userAgents";
import { getMediaTypesForPageUrl, stringify } from "../lib/utils";
@@ -614,6 +615,39 @@ async function initMediaOverlay () {
}
async function checkBridgeCompat () {
logger.info("checking for bridge...");
const info = await bridge.getInfo();
if (info.isVersionCompatible) {
logger.info("... bridge compatible!");
} else {
logger.info("... bridge incompatible!");
const updateNotificationId = await browser.notifications.create({
type: "basic"
, title: `${
_("extensionName")}${_("optionsBridgeIssueStatusTitle")}`
, message: info.isVersionOlder
? _("optionsBridgeOlderAction")
: _("optionsBridgeNewerAction")
});
browser.notifications.onClicked.addListener(notificationId => {
if (notificationId !== updateNotificationId) {
return;
}
browser.tabs.create({
url: `https://github.com/hensm/fx_cast/releases/tag/v${
info.expectedVersion}`
});
});
}
}
let isInitialized = false;
async function init () {
@@ -631,9 +665,10 @@ async function init () {
}
logger.info("init");
isInitialized = true;
await checkBridgeCompat();
await StatusManager.init();
await ShimManager.init();

View File

@@ -51,6 +51,7 @@
, "menus"
, "menus.overrideContext"
, "nativeMessaging"
, "notifications"
, "storage"
, "tabs"
, "webNavigation"