From 7cbfad93699ca9bce78ccf13a812c4992e5fc949 Mon Sep 17 00:00:00 2001 From: "mr. m" Date: Sun, 24 Aug 2025 18:19:41 +0200 Subject: [PATCH] chore: Bump version and fix some small quality issues, b=no-bug, c=common, folders, tabs, workspaces --- src/zen/common/styles/zen-theme.css | 4 ++++ src/zen/folders/ZenFolders.mjs | 5 ++++ src/zen/tabs/zen-tabs/vertical-tabs.css | 1 + src/zen/workspaces/ZenWorkspace.mjs | 6 ++--- src/zen/workspaces/ZenWorkspaces.mjs | 31 ++++++++++++++----------- src/zen/workspaces/zen-workspaces.css | 4 +++- surfer.json | 2 +- 7 files changed, 34 insertions(+), 19 deletions(-) diff --git a/src/zen/common/styles/zen-theme.css b/src/zen/common/styles/zen-theme.css index 2e50320f5..806ec8c33 100644 --- a/src/zen/common/styles/zen-theme.css +++ b/src/zen/common/styles/zen-theme.css @@ -235,6 +235,10 @@ @media (-moz-windows-mica) or (-moz-platform: macos) or ((-moz-platform: linux) and -moz-pref('zen.widget.linux.transparency')) { background: transparent; --zen-themed-toolbar-bg-transparent: transparent; + + @media (-moz-windows-mica) and (not (-moz-pref('widget.windows.mica.toplevel-backdrop', 1))) and (not (-moz-pref('widget.windows.mica.toplevel-backdrop', 2))) { + --zen-themed-toolbar-bg-transparent: rgba(255, 255, 255, 0.2); + } } &, diff --git a/src/zen/folders/ZenFolders.mjs b/src/zen/folders/ZenFolders.mjs index 4a5df0542..162c258c1 100644 --- a/src/zen/folders/ZenFolders.mjs +++ b/src/zen/folders/ZenFolders.mjs @@ -1265,6 +1265,11 @@ } } + if (group.activeTabs.length === 0) { + group.removeAttribute('has-active'); + this.updateFolderIcon(group, 'close', false); + } + this.on_TabGroupCollapse({ target: group, forCollapseVisible: true }).then(() => { if (selectedTab) { selectedTab.style.removeProperty('--zen-folder-indent'); diff --git a/src/zen/tabs/zen-tabs/vertical-tabs.css b/src/zen/tabs/zen-tabs/vertical-tabs.css index 71a984163..773e8ead5 100644 --- a/src/zen/tabs/zen-tabs/vertical-tabs.css +++ b/src/zen/tabs/zen-tabs/vertical-tabs.css @@ -1436,6 +1436,7 @@ border: none; padding: 0; outline: none !important; + border-radius: 0; } /* ========================================================================== diff --git a/src/zen/workspaces/ZenWorkspace.mjs b/src/zen/workspaces/ZenWorkspace.mjs index c162eddd4..3b8f8e8d8 100644 --- a/src/zen/workspaces/ZenWorkspace.mjs +++ b/src/zen/workspaces/ZenWorkspace.mjs @@ -6,9 +6,9 @@ static get markup() { return ` - - - + + diff --git a/src/zen/workspaces/ZenWorkspaces.mjs b/src/zen/workspaces/ZenWorkspaces.mjs index 7662ea62b..3b8711509 100644 --- a/src/zen/workspaces/ZenWorkspaces.mjs +++ b/src/zen/workspaces/ZenWorkspaces.mjs @@ -1286,7 +1286,7 @@ var gZenWorkspaces = new (class extends nsZenMultiWindowFeature { await this.changeWorkspace( workspacesData.workspaces.find((workspace) => workspace.uuid !== windowID) ); - this._deleteAllTabsInWorkspace(windowID); + await this.#deleteAllTabsInWorkspace(windowID); delete this._lastSelectedWorkspaceTabs[windowID]; await ZenWorkspacesStorage.removeWorkspace(windowID); // Remove the workspace from the cache @@ -1440,20 +1440,23 @@ var gZenWorkspaces = new (class extends nsZenMultiWindowFeature { // Workspaces management - _deleteAllTabsInWorkspace(workspaceID) { - gBrowser.removeTabs( - Array.from(this.allStoredTabs).filter( - (tab) => - tab.getAttribute('zen-workspace-id') === workspaceID && - !tab.hasAttribute('zen-empty-tab') && - !tab.hasAttribute('zen-essential') - ), - { - animate: false, - skipSessionStore: true, - closeWindowWithLastTab: false, - } + async #deleteAllTabsInWorkspace(workspaceID) { + const tabs = Array.from(this.allStoredTabs).filter( + (tab) => + tab.getAttribute('zen-workspace-id') === workspaceID && + !tab.hasAttribute('zen-empty-tab') && + !tab.hasAttribute('zen-essential') ); + for (const tab of tabs) { + if (tab.pinned) { + await ZenPinnedTabsStorage.removePin(tab.getAttribute('zen-pin-id')); + } + } + gBrowser.removeTabs(tabs, { + animate: false, + skipSessionStore: true, + closeWindowWithLastTab: false, + }); } moveTabToWorkspace(tab, workspaceID) { diff --git a/src/zen/workspaces/zen-workspaces.css b/src/zen/workspaces/zen-workspaces.css index 244d7ee9b..414bb868a 100644 --- a/src/zen/workspaces/zen-workspaces.css +++ b/src/zen/workspaces/zen-workspaces.css @@ -207,12 +207,14 @@ } .zen-current-workspace-indicator-name { - display: block; + display: flex; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: auto; font-weight: 600; + align-items: center; + margin: 0; } .zen-workspaces-actions { diff --git a/surfer.json b/surfer.json index e3d0f94f8..b8cfcca7c 100644 --- a/surfer.json +++ b/surfer.json @@ -19,7 +19,7 @@ "brandShortName": "Zen", "brandFullName": "Zen Browser", "release": { - "displayVersion": "1.14.12b", + "displayVersion": "1.15b", "github": { "repo": "zen-browser/desktop" },