diff --git a/README.md b/README.md index fe060d312..cd81cbc0e 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ Zen is currently built using Firefox version `138.0.4`! 🚀 -- [`Zen Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 138.0.4`! +- [`Zen Twilight`](https://zen-browser.app/download?twilight) - Is currently built using Firefox version `RC 139.0`! - Check out the latest [release notes](https://zen-browser.app/release-notes)! - Part of our mission is to keep Zen up-to-date with the latest version of Firefox, so you can enjoy the latest features and security updates! diff --git a/build/firefox-cache/l10n-last-commit-hash b/build/firefox-cache/l10n-last-commit-hash index 5ec4a514c..714d02686 100644 --- a/build/firefox-cache/l10n-last-commit-hash +++ b/build/firefox-cache/l10n-last-commit-hash @@ -1 +1 @@ -f5fd58c29d2c9bfcc5dcfc8f4abbe69016e13b44 \ No newline at end of file +82a08ea3ce2d17f21f3d45f4b5607a37590b0158 \ No newline at end of file diff --git a/src/browser/base/moz-build.patch b/src/browser/base/moz-build.patch index ce28f4aaf..257879b43 100644 --- a/src/browser/base/moz-build.patch +++ b/src/browser/base/moz-build.patch @@ -1,9 +1,9 @@ diff --git a/browser/base/moz.build b/browser/base/moz.build -index 636e0841786735a63ddea00e819c0b6f0b8a5d4d..62e4531bd19caf098fd76c69b213fa32d62546a6 100644 +index 9da444880c4dbf188443d43e8d0a71d98311a2b7..3a654be6f78931e92479b30de6f0a6e50da81908 100644 --- a/browser/base/moz.build +++ b/browser/base/moz.build -@@ -87,3 +87,5 @@ if CONFIG["MOZ_WIDGET_TOOLKIT"] in ("windows", "gtk"): - DEFINES["MENUBAR_CAN_AUTOHIDE"] = 1 +@@ -81,3 +81,5 @@ DEFINES["MOZ_APP_VERSION_DISPLAY"] = CONFIG["MOZ_APP_VERSION_DISPLAY"] + DEFINES["APP_LICENSE_BLOCK"] = "%s/content/overrides/app-license.html" % SRCDIR JAR_MANIFESTS += ["jar.mn"] + diff --git a/src/browser/components/tabbrowser/content/tabbrowser-js.patch b/src/browser/components/tabbrowser/content/tabbrowser-js.patch index dfaaacb14..31324eeec 100644 --- a/src/browser/components/tabbrowser/content/tabbrowser-js.patch +++ b/src/browser/components/tabbrowser/content/tabbrowser-js.patch @@ -222,8 +222,8 @@ index 6dece2b9d0462d90a28e75350ce983d87816ef73..5c49c43714b3914130f8d821d902f9f2 + t.setAttribute("zen-empty-tab", "true"); + } if (insertTab) { - if (typeof index == "number") { - elementIndex = this.#tabIndexToElementIndex(index); + // Insert the tab into the tab container in the correct position. + // For now, we support `index` as an alias for `tabIndex`. @@ -2779,6 +2846,7 @@ openWindowInfo, skipLoad, @@ -245,25 +245,8 @@ index 6dece2b9d0462d90a28e75350ce983d87816ef73..5c49c43714b3914130f8d821d902f9f2 // Additionally send pinned tab events if (pinned) { this._notifyPinnedStatus(t); -@@ -2945,12 +3019,15 @@ - * @param {string} [label=] - * @returns {MozTabbrowserTabGroup} - */ -- _createTabGroup(id, color, collapsed, label = "") { -+ _createTabGroup(id, color, collapsed, label = "", pinned = false, essential = false, splitViewGroup = false) { - let group = document.createXULElement("tab-group", { is: "tab-group" }); - group.id = id; - group.collapsed = collapsed; - group.color = color; - group.label = label; -+ group.pinned = pinned; -+ group.essential = essential; -+ if (splitViewGroup) group.setAttribute('split-view-group', true); - return group; - } - @@ -2993,10 +3070,10 @@ - insertBefore = null, + isAdoptingGroup = false, isUserTriggered = false, telemetryUserCreateSource = "unknown", + forSplitView = false, @@ -275,9 +258,9 @@ index 6dece2b9d0462d90a28e75350ce983d87816ef73..5c49c43714b3914130f8d821d902f9f2 if (!color) { @@ -3011,7 +3088,12 @@ - id = `${Date.now()}-${Math.round(Math.random() * 100)}`; - } - let group = this._createTabGroup(id, color, false, label); + label, + isAdoptingGroup + ); - this.tabContainer.insertBefore( + if (forSplitView) { + group.setAttribute('split-view-group', true); @@ -386,21 +369,21 @@ index 6dece2b9d0462d90a28e75350ce983d87816ef73..5c49c43714b3914130f8d821d902f9f2 if (tabs.length > 1 || !tabs[0].selected) { @@ -3912,7 +4030,7 @@ // Ensure we have an index if one was not provided. - if (typeof index != "number") { + if (typeof elementIndex != "number" && typeof tabIndex != "number") { // Move the new tab after another tab if needed, to the end otherwise. -- index = Infinity; -+ index = Services.prefs.getBoolPref("zen.view.show-newtab-button-top") ? this._numVisiblePinTabsWithoutCollapsed : Infinity; +- elementIndex = Infinity; ++ elementIndex = Services.prefs.getBoolPref("zen.view.show-newtab-button-top") ? this._numVisiblePinTabsWithoutCollapsed : Infinity; if ( !bulkOrderedOpen && ((openerTab && @@ -3935,7 +4053,7 @@ ) { - index = Infinity; + elementIndex = Infinity; } else if (previousTab.visible) { -- index = previousTab.elementIndex + 1; -+ index = (typeof previousTab.elementIndex === 'undefined') ? index : (previousTab.elementIndex + 1); +- elementIndex = previousTab.elementIndex + 1; ++ elementIndex = (typeof previousTab.elementIndex === 'undefined') ? index : (previousTab.elementIndex + 1); } else if (previousTab == FirefoxViewHandler.tab) { - index = 0; + elementIndex = 0; } @@ -3958,18 +4076,18 @@ @@ -413,12 +396,12 @@ index 6dece2b9d0462d90a28e75350ce983d87816ef73..5c49c43714b3914130f8d821d902f9f2 } else { - index = Math.max(index, this.pinnedTabCount); + index = Math.max(index, this._numVisiblePinTabsWithoutCollapsed); - index = Math.min(index, this.tabContainer.ariaFocusableItems.length); + index = Math.min(index, allItems.length); } /** @type {MozTabbrowserTab|undefined} */ -- let itemAfter = this.tabContainer.ariaFocusableItems.at(index); -+ let itemAfter = this.tabContainer.ariaFocusableItems.filter(tab => !tab.hasAttribute("zen-glance-tab")).at(index); +- let itemAfter = allItems.at(index); ++ let itemAfter = allItems.filter(tab => !tab.hasAttribute("zen-glance-tab")).at(index); this.tabContainer._invalidateCachedTabs(); - if (tabGroup) { diff --git a/surfer.json b/surfer.json index 2088c338c..8ae2fc155 100644 --- a/surfer.json +++ b/surfer.json @@ -6,7 +6,7 @@ "version": { "product": "firefox", "version": "138.0.4", - "candidate": "138.0.4" + "candidate": "139.0" }, "buildOptions": { "generateBranding": true