Refactor ZenWorkspaces initialization and workspace check

This commit is contained in:
mauro-balades 2024-09-18 00:06:02 +02:00
parent 5f61c3b5af
commit 0f775df5e6

View file

@ -5,13 +5,8 @@ var ZenWorkspaces = {
*/
_lastSelectedWorkspaceTabs: {},
async init() {
let docElement = document.documentElement;
if (
docElement.getAttribute('chromehidden').includes('toolbar') ||
docElement.getAttribute('chromehidden').includes('menubar') ||
docElement.hasAttribute('privatebrowsingmode')
) {
init() {
if (!this.shouldHaveWorkspaces) {
console.warn('ZenWorkspaces: !!! ZenWorkspaces is disabled in hidden windows !!!');
return; // We are in a hidden window, don't initialize ZenWorkspaces
}
@ -22,8 +17,19 @@ var ZenWorkspaces = {
});
},
get shouldHaveWorkspaces() {
delete this.shouldHaveWorkspaces;
let docElement = document.documentElement;
this.shouldHaveWorkspaces = !(docElement.hasAttribute('privatebrowsingmode')
|| docElement.getAttribute('chromehidden').includes('toolbar')
|| docElement.getAttribute('chromehidden').includes('menubar'));
return this.shouldHaveWorkspaces;
},
get workspaceEnabled() {
return Services.prefs.getBoolPref('zen.workspaces.enabled', false);
delete this.workspaceEnabled;
this.workspaceEnabled = Services.prefs.getBoolPref('zen.workspaces.enabled', false) && this.shouldHaveWorkspaces;
return this.workspaceEnabled;
},
getActiveWorkspaceFromCache() {
@ -744,4 +750,3 @@ var ZenWorkspaces = {
},
};
ZenWorkspaces.init();