From 41f178e840d59e68636f07baec18a8d191201895 Mon Sep 17 00:00:00 2001 From: "mr. M" Date: Tue, 29 Oct 2024 18:08:50 +0100 Subject: [PATCH] Fixed duplicate actors manager and glance can be disabled now --- src/ZenActorsManager.mjs | 8 ++++++-- src/ZenGlanceManager.mjs | 23 ++++++++++++----------- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/ZenActorsManager.mjs b/src/ZenActorsManager.mjs index 303a7ce..4048952 100644 --- a/src/ZenActorsManager.mjs +++ b/src/ZenActorsManager.mjs @@ -9,7 +9,11 @@ var gZenActorsManager = { return; } - ChromeUtils.registerWindowActor(...args); - this._actors.add(args[0]); + try { + ChromeUtils.registerWindowActor(...args); + this._actors.add(args[0]); + } catch (e) { + console.warn(`Failed to register JSWindowActor: ${e}`); + } }, } diff --git a/src/ZenGlanceManager.mjs b/src/ZenGlanceManager.mjs index 167b074..61cf5eb 100644 --- a/src/ZenGlanceManager.mjs +++ b/src/ZenGlanceManager.mjs @@ -163,18 +163,19 @@ function registerWindowActors() { - // TODO: Only if the pref is enabled - gZenActorsManager.addJSWindowActor("ZenGlance", { - parent: { - esModuleURI: "chrome://browser/content/zen-components/actors/ZenGlanceParent.sys.mjs", - }, - child: { - esModuleURI: "chrome://browser/content/zen-components/actors/ZenGlanceChild.sys.mjs", - events: { - DOMContentLoaded: {}, + if (Services.prefs.getBoolPref("zen.glance.enabled", true)) { + gZenActorsManager.addJSWindowActor("ZenGlance", { + parent: { + esModuleURI: "chrome://browser/content/zen-components/actors/ZenGlanceParent.sys.mjs", }, - }, - }); + child: { + esModuleURI: "chrome://browser/content/zen-components/actors/ZenGlanceChild.sys.mjs", + events: { + DOMContentLoaded: {}, + }, + }, + }); + } } registerWindowActors();