fune/browser/extensions/webcompat/run.js
Thomas Wisniewski 011dbf08d8 Bug 1713635 - Work around a lack of support for the properties parameter of browser.tabs.onUpdated in GeckoView, so the webcompat addon starts up properly there; r=denschub,webcompat-reviewers
Also put try/catch blocks around the startup sections of the various sub-components, to limit the damage if one of them throws while failing to start

Differential Revision: https://phabricator.services.mozilla.com/D116402
2021-05-31 18:06:48 +00:00

40 lines
1.1 KiB
JavaScript

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
/* globals AboutCompatBroker, AVAILABLE_INJECTIONS, AVAILABLE_SHIMS,
AVAILABLE_PIP_OVERRIDES, AVAILABLE_UA_OVERRIDES, CUSTOM_FUNCTIONS,
Injections, Shims, UAOverrides */
let injections, uaOverrides;
try {
injections = new Injections(AVAILABLE_INJECTIONS, CUSTOM_FUNCTIONS);
injections.bootup();
} catch (e) {
console.error("Injections failed to start", e);
injections = undefined;
}
try {
uaOverrides = new UAOverrides(AVAILABLE_UA_OVERRIDES);
uaOverrides.bootup();
} catch (e) {
console.error("UA overrides failed to start", e);
uaOverrides = undefined;
}
try {
const aboutCompatBroker = new AboutCompatBroker({ injections, uaOverrides });
aboutCompatBroker.bootup();
} catch (e) {
console.error("about:compat broker failed to start", e);
}
try {
new Shims(AVAILABLE_SHIMS);
} catch (e) {
console.error("Shims failed to start", e);
}