web: Don't polyfill with self-hosted Ruffle while extension is loading
This commit is contained in:
parent
f6a139235b
commit
2ced2d2300
|
@ -150,6 +150,15 @@ export const FLASH_PLUGIN = new RufflePlugin(
|
||||||
"ruffle.js"
|
"ruffle.js"
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A fake plugin designed to allow early detection of if the Ruffle extension is in use.
|
||||||
|
*/
|
||||||
|
export const RUFFLE_EXTENSION = new RufflePlugin(
|
||||||
|
"Ruffle Extension",
|
||||||
|
"Ruffle Extension",
|
||||||
|
"ruffle.js"
|
||||||
|
);
|
||||||
|
|
||||||
FLASH_PLUGIN.install({
|
FLASH_PLUGIN.install({
|
||||||
type: FUTURESPLASH_MIMETYPE,
|
type: FUTURESPLASH_MIMETYPE,
|
||||||
description: "Shockwave Flash",
|
description: "Shockwave Flash",
|
||||||
|
|
|
@ -199,7 +199,12 @@ export function pluginPolyfill(): void {
|
||||||
*/
|
*/
|
||||||
export function polyfill(isExt: boolean): void {
|
export function polyfill(isExt: boolean): void {
|
||||||
isExtension = isExt;
|
isExtension = isExt;
|
||||||
|
const usingExtension =
|
||||||
|
navigator.plugins.namedItem("Ruffle Extension")?.filename ===
|
||||||
|
"ruffle.js";
|
||||||
|
if (isExtension || !usingExtension) {
|
||||||
polyfillFlashInstances();
|
polyfillFlashInstances();
|
||||||
polyfillFrames();
|
polyfillFrames();
|
||||||
initMutationObserver();
|
initMutationObserver();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,8 @@
|
||||||
import {
|
import {
|
||||||
installPlugin,
|
installPlugin,
|
||||||
FLASH_PLUGIN,
|
FLASH_PLUGIN,
|
||||||
|
RUFFLE_EXTENSION,
|
||||||
} from "ruffle-core/dist/plugin-polyfill.js";
|
} from "ruffle-core/dist/plugin-polyfill.js";
|
||||||
|
|
||||||
installPlugin(FLASH_PLUGIN);
|
installPlugin(FLASH_PLUGIN);
|
||||||
|
installPlugin(RUFFLE_EXTENSION);
|
||||||
|
|
Loading…
Reference in New Issue