fix(workspaces): Ensure ZenWorkspacesEngine is registered only once

This commit prevents multiple registrations of the `ZenWorkspacesEngine`.

Previously, the `ZenWorkspacesEngine` was registered unconditionally every time `ZenWorkspaces` was initialized. This could lead to issues if the engine was already registered.

This commit adds a check to ensure that the engine is only registered if it is not already present. This prevents multiple registrations and ensures that the engine is only initialized once.
This commit is contained in:
Kristijan Ribarić 2024-10-05 19:54:08 +02:00
parent 0d161326ef
commit b28ca11e57

View file

@ -19,7 +19,9 @@ var ZenWorkspaces = new (class extends ZenMultiWindowFeature {
);
ChromeUtils.defineLazyGetter(this, 'tabContainer', () => document.getElementById('tabbrowser-tabs'));
await ZenWorkspacesStorage.init();
Weave.Service.engineManager.register(ZenWorkspacesEngine);
if(!Weave.Service.engineManager.get("workspaces")) {
Weave.Service.engineManager.register(ZenWorkspacesEngine);
}
await this.initializeWorkspaces();
console.info('ZenWorkspaces: ZenWorkspaces initialized');