mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-19 23:07:33 +09:00
24 lines
800 B
JavaScript
24 lines
800 B
JavaScript
|
|
"use strict";
|
||
|
|
|
||
|
|
/* globals addMessageListener */
|
||
|
|
let {Management} = Components.utils.import("resource://gre/modules/Extension.jsm", {});
|
||
|
|
let events = [];
|
||
|
|
function record(type, extensionContext) {
|
||
|
|
let eventType = type == "proxy-context-load" ? "load" : "unload";
|
||
|
|
let url = extensionContext.uri.spec;
|
||
|
|
let extensionId = extensionContext.extension.id;
|
||
|
|
events.push({eventType, url, extensionId});
|
||
|
|
}
|
||
|
|
|
||
|
|
Management.on("proxy-context-load", record);
|
||
|
|
Management.on("proxy-context-unload", record);
|
||
|
|
addMessageListener("cleanup", () => {
|
||
|
|
Management.off("proxy-context-load", record);
|
||
|
|
Management.off("proxy-context-unload", record);
|
||
|
|
});
|
||
|
|
|
||
|
|
addMessageListener("get-context-events", extensionId => {
|
||
|
|
sendAsyncMessage("context-events", events);
|
||
|
|
events = [];
|
||
|
|
});
|
||
|
|
sendAsyncMessage("chromescript-startup");
|