diff --git a/package-lock.json b/package-lock.json index a19e60ef3..ed796cc6f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "devDependencies": { "@babel/preset-typescript": "^7.27.0", "@zen-browser/prettier": "^3.9.3", - "@zen-browser/surfer": "^1.14.5", + "@zen-browser/surfer": "^1.14.6", "formal-git": "^1.2.9", "globals": "^16.3.0", "husky": "^9.1.7", @@ -868,9 +868,9 @@ } }, "node_modules/@zen-browser/surfer": { - "version": "1.14.5", - "resolved": "https://registry.npmjs.org/@zen-browser/surfer/-/surfer-1.14.5.tgz", - "integrity": "sha512-VLvYuM1y86Hqux5GDcPwU7FIx2ADbpumnNyO3NI5mK3DtUB8jULPXbhzEtB8qnnRLiQ86yxyPf9ONT28/7FZCg==", + "version": "1.14.6", + "resolved": "https://registry.npmjs.org/@zen-browser/surfer/-/surfer-1.14.6.tgz", + "integrity": "sha512-hgTKadIJ/9/9dizHn4229ZZHQckd7D4OR6e7HVkcmtuq1Jke3OAn6SH7u7NjvzvYy35Mb2sXjVUvZEG1ITIfgg==", "dev": true, "license": "MPL-2.0", "dependencies": { diff --git a/package.json b/package.json index 6b9efa519..705e3e515 100644 --- a/package.json +++ b/package.json @@ -47,7 +47,7 @@ "devDependencies": { "@babel/preset-typescript": "^7.27.0", "@zen-browser/prettier": "^3.9.3", - "@zen-browser/surfer": "^1.14.5", + "@zen-browser/surfer": "^1.14.6", "formal-git": "^1.2.9", "globals": "^16.3.0", "husky": "^9.1.7", diff --git a/src/zen/common/ZenPreloadedScripts.js b/src/zen/common/ZenPreloadedScripts.js index 6c4265ce9..559d4c8e4 100644 --- a/src/zen/common/ZenPreloadedScripts.js +++ b/src/zen/common/ZenPreloadedScripts.js @@ -22,6 +22,7 @@ "chrome://browser/content/zen-components/ZenFolders.mjs", "chrome://browser/content/zen-components/ZenEmojiPicker.mjs", "chrome://browser/content/zen-components/ZenLiveFoldersUI.mjs", + "chrome://browser/content/zen-components/ZenDownloadAnimation.mjs", ]; for (let script of scripts) { @@ -30,7 +31,6 @@ let customZenElements = [ ["zen-folder", "chrome://browser/content/zen-components/ZenFolder.mjs"], - ["zen-download-animation", "chrome://browser/content/zen-components/ZenDownloadAnimation.mjs"], ["zen-workspace-creation", "resource:///modules/zen/ZenSpaceCreation.mjs"], ["zen-workspace", "resource:///modules/zen/ZenSpace.mjs"], ["zen-workspace-icons", "resource:///modules/zen/ZenSpaceIcons.mjs"] @@ -43,12 +43,12 @@ // used before DOMContentLoaded it will be imported and upgraded when // registering the customElements.setElementCreationCallback(). for (let [tag, script] of customZenElements) { - customElements.setElementCreationCallback( - tag, - function customElementCreationCallback() { - ChromeUtils.importESModule(script, { global: "current" }); - } - ); + customElements.setElementCreationCallback( + tag, + function customElementCreationCallback() { + ChromeUtils.importESModule(script, { global: "current" }); + } + ); } }, { once: true } diff --git a/src/zen/split-view/ZenViewSplitter.mjs b/src/zen/split-view/ZenViewSplitter.mjs index 92639db26..37fc8e6cf 100644 --- a/src/zen/split-view/ZenViewSplitter.mjs +++ b/src/zen/split-view/ZenViewSplitter.mjs @@ -1166,7 +1166,10 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature { insetUpdateContextMenuItems() { const contentAreaContextMenu = document.getElementById("tabContextMenu"); contentAreaContextMenu.addEventListener("popupshowing", () => { - let contextTab = TabContextMenu.contextTab || gBrowser.selectedTab; + let contextTab = TabContextMenu.contextTab; + if (!contextTab) { + return; + } let selectedTabs = contextTab.multiselected ? gBrowser.selectedTabs : [contextTab]; @@ -1249,6 +1252,11 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature { let currentTab = TabContextMenu.contextTab || gBrowser.selectedTab; if (currentTab.multiselected) { tabs = gBrowser.selectedTabs; + } else if (!currentTab.selected) { + tabs = [ + currentTab, + ...gBrowser.selectedTabs.filter(t => t !== currentTab), + ]; } else { tabs = [currentTab]; }