chore: More migration for firefox 138.0, b=(no-bug), c=tabs, common, split-view

This commit is contained in:
Mr. M
2025-04-19 14:07:51 +02:00
parent ec3e2ab870
commit 2e6e71e3b6
17 changed files with 135 additions and 293 deletions

View File

@@ -31,6 +31,7 @@ pref("browser.privateWindowSeparation.enabled", false);
// Mica // Mica
pref("widget.windows.mica", true); pref("widget.windows.mica", true);
pref("widget.windows.mica.popups", true); pref("widget.windows.mica.popups", true);
pref("widget.windows.mica.toplevel-backdrop", 2);
#endif #endif
pref('browser.newtabpage.activity-stream.newtabWallpapers.enabled', true); pref('browser.newtabpage.activity-stream.newtabWallpapers.enabled', true);
@@ -142,10 +143,6 @@ pref('zen.view.experimental-rounded-view', false);
pref('zen.view.experimental-rounded-view', true); pref('zen.view.experimental-rounded-view', true);
#endif #endif
#ifdef XP_WIN
pref('zen.widget.windows.acrylic', true);
#endif
// Glance // Glance
pref('zen.glance.enabled', true); pref('zen.glance.enabled', true);
pref('zen.glance.hold-duration', 300); // in ms pref('zen.glance.hold-duration', 300); // in ms

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/customizableui/CustomizableUI.sys.mjs b/browser/components/customizableui/CustomizableUI.sys.mjs diff --git a/browser/components/customizableui/CustomizableUI.sys.mjs b/browser/components/customizableui/CustomizableUI.sys.mjs
index 91088fab1759b9af908912648d28daa5938a29c9..999c1950e25560164463ac57773ca7fedac6255f 100644 index 91088fab1759b9af908912648d28daa5938a29c9..3f52ee8cd77ac171fd2cbf355ade1371e57d0db5 100644
--- a/browser/components/customizableui/CustomizableUI.sys.mjs --- a/browser/components/customizableui/CustomizableUI.sys.mjs
+++ b/browser/components/customizableui/CustomizableUI.sys.mjs +++ b/browser/components/customizableui/CustomizableUI.sys.mjs
@@ -13,6 +13,7 @@ ChromeUtils.defineESModuleGetters(lazy, { @@ -13,6 +13,7 @@ ChromeUtils.defineESModuleGetters(lazy, {
@@ -114,9 +114,9 @@ index 91088fab1759b9af908912648d28daa5938a29c9..999c1950e25560164463ac57773ca7fe
* The identifier string of the area that aNode is being inserted into. * The identifier string of the area that aNode is being inserted into.
*/ */
insertWidgetBefore(aNode, aNextNode, aContainer, aAreaId) { insertWidgetBefore(aNode, aNextNode, aContainer, aAreaId) {
+ if (aArea === CustomizableUI.AREA_NAVBAR && aNode.ownerGlobal.gZenVerticalTabsManager._hasSetSingleToolbar) { + if (aAreaId === CustomizableUI.AREA_NAVBAR && aNode.ownerGlobal.gZenVerticalTabsManager._hasSetSingleToolbar) {
+ aContainer = aNode.ownerDocument.getElementById("zen-sidebar-top-buttons-customization-target"); + aContainer = aNode.ownerDocument.getElementById("zen-sidebar-top-buttons-customization-target");
+ aArea = "zen-sidebar-top-buttons"; + aAreaId = "zen-sidebar-top-buttons";
+ } + }
this.notifyDOMChange(aNode, aNextNode, aContainer, false, () => { this.notifyDOMChange(aNode, aNextNode, aContainer, false, () => {
this.setLocationAttributes(aNode, aAreaId); this.setLocationAttributes(aNode, aAreaId);

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js
index bfba253af3253a8cf547a5d69a1695651fc5c203..fca9c6c918f7d2353edd4f675dd19ca4c4208a50 100644 index bfba253af3253a8cf547a5d69a1695651fc5c203..1ba8b8c51f27d92222f1e682681cf9c9f61ca14c 100644
--- a/browser/components/tabbrowser/content/tabbrowser.js --- a/browser/components/tabbrowser/content/tabbrowser.js
+++ b/browser/components/tabbrowser/content/tabbrowser.js +++ b/browser/components/tabbrowser/content/tabbrowser.js
@@ -415,11 +415,67 @@ @@ -415,11 +415,67 @@
@@ -638,8 +638,8 @@ index bfba253af3253a8cf547a5d69a1695651fc5c203..fca9c6c918f7d2353edd4f675dd19ca4
} }
} }
- -
+ if (tab.group?.hasAttribute("split-view-group")) { + if (element.group?.hasAttribute("split-view-group")) {
+ tab = tab.group; + element = element.group;
+ } + }
// Don't allow mixing pinned and unpinned tabs. // Don't allow mixing pinned and unpinned tabs.
if (element.pinned && !targetElement?.pinned) { if (element.pinned && !targetElement?.pinned) {
@@ -652,7 +652,7 @@ index bfba253af3253a8cf547a5d69a1695651fc5c203..fca9c6c918f7d2353edd4f675dd19ca4
+ targetElement = targetElement.group; + targetElement = targetElement.group;
+ } + }
let getContainer = () => { let getContainer = () => {
+ if (tab.hasAttribute("zen-essential")) { + if (element.hasAttribute("zen-essential")) {
+ return document.getElementById("zen-essentials-container"); + return document.getElementById("zen-essentials-container");
+ } + }
if (element.pinned && this.tabContainer.verticalMode) { if (element.pinned && this.tabContainer.verticalMode) {

View File

@@ -1,8 +1,8 @@
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc977c8415 100644 index ef9c0389ec926e6bc01c0dc3b883beceaf1f7d43..5ba36f48da0d85cf9be1abcd8d5446e1a977b7b1 100644
--- a/browser/components/tabbrowser/content/tabs.js --- a/browser/components/tabbrowser/content/tabs.js
+++ b/browser/components/tabbrowser/content/tabs.js +++ b/browser/components/tabbrowser/content/tabs.js
@@ -93,7 +93,7 @@ @@ -83,7 +83,7 @@
}; };
this.arrowScrollbox._canScrollToElement = element => { this.arrowScrollbox._canScrollToElement = element => {
if (isTab(element)) { if (isTab(element)) {
@@ -11,7 +11,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
return true; return true;
}; };
@@ -347,7 +347,7 @@ @@ -342,7 +342,7 @@
// and we're not hitting the scroll buttons. // and we're not hitting the scroll buttons.
if ( if (
event.button != 0 || event.button != 0 ||
@@ -20,7 +20,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
event.composedTarget.localName == "toolbarbutton" event.composedTarget.localName == "toolbarbutton"
) { ) {
return; return;
@@ -396,6 +396,7 @@ @@ -391,6 +391,7 @@
// Reset the "ignored click" flag // Reset the "ignored click" flag
target._ignoredCloseButtonClicks = false; target._ignoredCloseButtonClicks = false;
} }
@@ -28,8 +28,8 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
/* Protects from close-tab-button errant doubleclick: /* Protects from close-tab-button errant doubleclick:
@@ -693,7 +694,7 @@ @@ -692,7 +693,7 @@
if (this.#isContainerVerticalPinnedExpanded(tab)) { if (this.#isContainerVerticalPinnedGrid(tab)) {
// In expanded vertical mode, the max number of pinned tabs per row is dynamic // In expanded vertical mode, the max number of pinned tabs per row is dynamic
// Set this before adjusting dragged tab's position // Set this before adjusting dragged tab's position
- let pinnedTabs = this.visibleTabs.slice(0, gBrowser.pinnedTabCount); - let pinnedTabs = this.visibleTabs.slice(0, gBrowser.pinnedTabCount);
@@ -37,7 +37,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let tabsPerRow = 0; let tabsPerRow = 0;
let position = 0; let position = 0;
for (let pinnedTab of pinnedTabs) { for (let pinnedTab of pinnedTabs) {
@@ -899,6 +900,10 @@ @@ -913,6 +914,10 @@
} }
let draggedTab = event.dataTransfer.mozGetDataAt(TAB_DROP_TYPE, 0); let draggedTab = event.dataTransfer.mozGetDataAt(TAB_DROP_TYPE, 0);
@@ -47,8 +47,8 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
+ } + }
if ( if (
(effects == "move" || effects == "copy") && (effects == "move" || effects == "copy") &&
this == draggedTab.container && document == draggedTab.ownerDocument &&
@@ -1012,6 +1017,18 @@ @@ -1069,6 +1074,18 @@
this._tabDropIndicator.hidden = true; this._tabDropIndicator.hidden = true;
event.stopPropagation(); event.stopPropagation();
@@ -60,14 +60,14 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
+ let moved = gZenPinnedTabManager.moveToAnotherTabContainerIfNecessary(event, movingTabs); + let moved = gZenPinnedTabManager.moveToAnotherTabContainerIfNecessary(event, movingTabs);
+ +
+ if (moved) { + if (moved) {
+ this._finishMoveTogetherSelectedTabs(draggedTab); + this.finishMoveTogetherSelectedTabs(draggedTab);
+ return; + return;
+ } + }
+ } + }
if (draggedTab && dropEffect == "copy") { if (draggedTab && dropEffect == "copy") {
// copy the dropped tab (wherever it's from) let duplicatedDraggedTab;
let newIndex = this._getDropIndex(event); let duplicatedTabs = [];
@@ -1050,10 +1067,11 @@ @@ -1108,10 +1125,11 @@
} }
} else { } else {
let isPinned = draggedTab.pinned; let isPinned = draggedTab.pinned;
@@ -83,8 +83,8 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
); );
let size = this.verticalMode ? "height" : "width"; let size = this.verticalMode ? "height" : "width";
let screenAxis = this.verticalMode ? "screenY" : "screenX"; let screenAxis = this.verticalMode ? "screenY" : "screenX";
@@ -1129,7 +1147,7 @@ @@ -1203,7 +1221,7 @@
tab.removeAttribute("tabdrop-samewindow"); item.removeAttribute("tabdrop-samewindow");
resolve(); resolve();
}; };
- if (gReduceMotion) { - if (gReduceMotion) {
@@ -92,22 +92,18 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
postTransitionCleanup(); postTransitionCleanup();
} else { } else {
let onTransitionEnd = transitionendEvent => { let onTransitionEnd = transitionendEvent => {
@@ -1246,7 +1264,7 @@ @@ -1327,6 +1345,7 @@
return;
} let nextItem = this.ariaFocusableItems[newIndex];
} let tabGroup = isTab(nextItem) && nextItem.group;
-
+ if (gZenViewSplitter.handleTabDrop(event, urls, replace, inBackground)) return; + if (gZenViewSplitter.handleTabDrop(event, urls, replace, inBackground)) return;
gBrowser.loadTabs(urls, { gBrowser.loadTabs(urls, {
inBackground, inBackground,
replace, replace,
@@ -1276,13 +1294,25 @@ @@ -1357,6 +1376,16 @@
return; return;
} }
- this._finishMoveTogetherSelectedTabs(draggedTab);
this._finishAnimateTabMove();
+ if (!dt.mozUserCancelled && dt.dropEffect == "none" && !this._isCustomizing) { + if (!dt.mozUserCancelled && dt.dropEffect == "none" && !this._isCustomizing) {
+ const moved = gZenViewSplitter.moveTabToSplitView(event, draggedTab); + const moved = gZenViewSplitter.moveTabToSplitView(event, draggedTab);
+ if (moved) { + if (moved) {
@@ -118,18 +114,10 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
+ if (gZenViewSplitter._lastOpenedTab) gZenViewSplitter._lastOpenedTab._visuallySelected = false; + if (gZenViewSplitter._lastOpenedTab) gZenViewSplitter._lastOpenedTab._visuallySelected = false;
+ } + }
+ +
+ this._finishMoveTogetherSelectedTabs(draggedTab); this.finishMoveTogetherSelectedTabs(draggedTab);
+ this.finishAnimateTabMove();
if ( this.#expandGroupOnDrop(draggedTab);
dt.mozUserCancelled || @@ -1582,7 +1611,7 @@
dt.dropEffect != "none" ||
- this._isCustomizing
+ this._isCustomizing ||
+ draggedTab.pinned
) {
delete draggedTab._dragData;
return;
@@ -1504,7 +1534,7 @@
} }
get newTabButton() { get newTabButton() {
@@ -138,7 +126,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
get verticalMode() { get verticalMode() {
@@ -1524,29 +1554,41 @@ @@ -1606,29 +1635,41 @@
if (this.#allTabs) { if (this.#allTabs) {
return this.#allTabs; return this.#allTabs;
} }
@@ -188,7 +176,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
/** /**
@@ -1566,7 +1608,7 @@ @@ -1648,7 +1689,7 @@
*/ */
get visibleTabs() { get visibleTabs() {
if (!this.#visibleTabs) { if (!this.#visibleTabs) {
@@ -197,7 +185,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
return this.#visibleTabs; return this.#visibleTabs;
} }
@@ -1601,23 +1643,18 @@ @@ -1683,23 +1724,18 @@
} }
let elementIndex = 0; let elementIndex = 0;
@@ -225,7 +213,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let visibleTabsInGroup = child.tabs.filter(tab => tab.visible); let visibleTabsInGroup = child.tabs.filter(tab => tab.visible);
visibleTabsInGroup.forEach(tab => { visibleTabsInGroup.forEach(tab => {
tab.elementIndex = elementIndex++; tab.elementIndex = elementIndex++;
@@ -1627,10 +1664,7 @@ @@ -1709,10 +1745,7 @@
} }
} }
@@ -237,7 +225,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
return this.#focusableItems; return this.#focusableItems;
} }
@@ -1638,6 +1672,7 @@ @@ -1720,6 +1753,7 @@
_invalidateCachedTabs() { _invalidateCachedTabs() {
this.#allTabs = null; this.#allTabs = null;
this._invalidateCachedVisibleTabs(); this._invalidateCachedVisibleTabs();
@@ -245,18 +233,18 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
_invalidateCachedVisibleTabs() { _invalidateCachedVisibleTabs() {
@@ -1652,8 +1687,8 @@ @@ -1734,8 +1768,8 @@
#isContainerVerticalPinnedExpanded(tab) { #isContainerVerticalPinnedGrid(tab) {
return ( return (
this.verticalMode && this.verticalMode &&
- tab.hasAttribute("pinned") && - tab.hasAttribute("pinned") &&
- this.hasAttribute("expanded") - this.hasAttribute("expanded") &&
+ (tab.hasAttribute("zen-essential")) && + (tab.hasAttribute("zen-essential")) &&
+ (this.hasAttribute("expanded") || document.documentElement.hasAttribute("zen-sidebar-expanded")) + (this.hasAttribute("expanded") || document.documentElement.hasAttribute("zen-sidebar-expanded")) &&
!this.expandOnHover
); );
} }
@@ -1751,7 +1785,7 @@
@@ -1668,7 +1703,7 @@
if (node == null) { if (node == null) {
// We have a container for non-tab elements at the end of the scrollbox. // We have a container for non-tab elements at the end of the scrollbox.
@@ -265,7 +253,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
node.before(tab); node.before(tab);
@@ -1763,7 +1798,7 @@ @@ -1846,7 +1880,7 @@
// There are separate "new tab" buttons for horizontal tabs toolbar, vertical tabs and // There are separate "new tab" buttons for horizontal tabs toolbar, vertical tabs and
// for when the tab strip is overflowed (which is shared by vertical and horizontal tabs); // for when the tab strip is overflowed (which is shared by vertical and horizontal tabs);
// Attach the long click popup to all of them. // Attach the long click popup to all of them.
@@ -274,7 +262,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
const newTab2 = this.newTabButton; const newTab2 = this.newTabButton;
const newTabVertical = document.getElementById( const newTabVertical = document.getElementById(
"vertical-tabs-newtab-button" "vertical-tabs-newtab-button"
@@ -1846,7 +1881,7 @@ @@ -1929,7 +1963,7 @@
let rect = ele => { let rect = ele => {
return window.windowUtils.getBoundsWithoutFlushing(ele); return window.windowUtils.getBoundsWithoutFlushing(ele);
}; };
@@ -283,7 +271,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
if (tab && rect(tab).width <= this._tabClipWidth) { if (tab && rect(tab).width <= this._tabClipWidth) {
this.setAttribute("closebuttons", "activetab"); this.setAttribute("closebuttons", "activetab");
} else { } else {
@@ -1858,10 +1893,12 @@ @@ -1941,10 +1975,12 @@
_handleTabSelect(aInstant) { _handleTabSelect(aInstant) {
let selectedTab = this.selectedItem; let selectedTab = this.selectedItem;
@@ -296,34 +284,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
selectedTab._notselectedsinceload = false; selectedTab._notselectedsinceload = false;
} }
@@ -1873,7 +1910,7 @@ @@ -2085,16 +2121,15 @@
return;
}
- let tabs = this.visibleTabs;
+ let tabs = this.visibleTabs.filter(tab => !tab.hasAttribute("zen-glance-tab"));
if (!tabs.length) {
return;
}
@@ -1909,7 +1946,7 @@
if (isEndTab && !this._hasTabTempMaxWidth) {
return;
}
- let numPinned = gBrowser.pinnedTabCount;
+ let numPinned = gBrowser._numVisiblePinTabs;
// Force tabs to stay the same width, unless we're closing the last tab,
// which case we need to let them expand just enough so that the overall
// tabbar width is the same.
@@ -1924,7 +1961,7 @@
let tabsToReset = [];
for (let i = numPinned; i < tabs.length; i++) {
let tab = tabs[i];
- tab.style.setProperty("max-width", aTabWidth, "important");
+ //tab.style.setProperty("max-width", aTabWidth, "important");
if (!isEndTab) {
// keep tabs the same width
tab.style.transition = "none";
@@ -1990,16 +2027,15 @@
// Move pinned tabs to another container when the tabstrip is toggled to vertical // Move pinned tabs to another container when the tabstrip is toggled to vertical
// and when session restore code calls _positionPinnedTabs; update styling whenever // and when session restore code calls _positionPinnedTabs; update styling whenever
// the number of pinned tabs changes. // the number of pinned tabs changes.
@@ -346,7 +307,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
} }
@@ -2007,9 +2043,7 @@ @@ -2102,9 +2137,7 @@
} }
_resetVerticalPinnedTabs() { _resetVerticalPinnedTabs() {
@@ -357,7 +318,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
if (!verticalTabsContainer.children.length) { if (!verticalTabsContainer.children.length) {
return; return;
@@ -2022,8 +2056,8 @@ @@ -2117,8 +2150,8 @@
} }
_positionPinnedTabs() { _positionPinnedTabs() {
@@ -368,7 +329,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let absPositionHorizontalTabs = let absPositionHorizontalTabs =
this.overflowing && tabs.length > numPinned && numPinned > 0; this.overflowing && tabs.length > numPinned && numPinned > 0;
@@ -2032,7 +2066,7 @@ @@ -2127,7 +2160,7 @@
if (this.verticalMode) { if (this.verticalMode) {
this._updateVerticalPinnedTabs(); this._updateVerticalPinnedTabs();
@@ -377,7 +338,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let layoutData = this._pinnedTabsLayoutCache; let layoutData = this._pinnedTabsLayoutCache;
let uiDensity = document.documentElement.getAttribute("uidensity"); let uiDensity = document.documentElement.getAttribute("uidensity");
if (!layoutData || layoutData.uiDensity != uiDensity) { if (!layoutData || layoutData.uiDensity != uiDensity) {
@@ -2104,7 +2138,7 @@ @@ -2191,7 +2224,7 @@
return; return;
} }
@@ -386,7 +347,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let directionX = screenX > dragData.animLastScreenX; let directionX = screenX > dragData.animLastScreenX;
let directionY = screenY > dragData.animLastScreenY; let directionY = screenY > dragData.animLastScreenY;
@@ -2112,7 +2146,7 @@ @@ -2199,7 +2232,7 @@
dragData.animLastScreenX = screenX; dragData.animLastScreenX = screenX;
let { width: tabWidth, height: tabHeight } = let { width: tabWidth, height: tabHeight } =
@@ -395,7 +356,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let shiftSizeX = tabWidth * movingTabs.length; let shiftSizeX = tabWidth * movingTabs.length;
let shiftSizeY = tabHeight; let shiftSizeY = tabHeight;
dragData.tabWidth = tabWidth; dragData.tabWidth = tabWidth;
@@ -2296,11 +2330,15 @@ @@ -2375,11 +2408,15 @@
this.#clearDragOverCreateGroupTimer(); this.#clearDragOverCreateGroupTimer();
let isPinned = draggedTab.pinned; let isPinned = draggedTab.pinned;
@@ -415,7 +376,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
if (this.#rtlMode) { if (this.#rtlMode) {
tabs.reverse(); tabs.reverse();
@@ -2314,7 +2352,7 @@ @@ -2393,7 +2430,7 @@
let size = this.verticalMode ? "height" : "width"; let size = this.verticalMode ? "height" : "width";
let translateAxis = this.verticalMode ? "translateY" : "translateX"; let translateAxis = this.verticalMode ? "translateY" : "translateX";
let scrollDirection = this.verticalMode ? "scrollTop" : "scrollLeft"; let scrollDirection = this.verticalMode ? "scrollTop" : "scrollLeft";
@@ -424,7 +385,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let translateX = event.screenX - dragData.screenX; let translateX = event.screenX - dragData.screenX;
let translateY = event.screenY - dragData.screenY; let translateY = event.screenY - dragData.screenY;
@@ -2328,6 +2366,12 @@ @@ -2407,6 +2444,12 @@
let lastTab = tabs.at(-1); let lastTab = tabs.at(-1);
let lastMovingTab = movingTabs.at(-1); let lastMovingTab = movingTabs.at(-1);
let firstMovingTab = movingTabs[0]; let firstMovingTab = movingTabs[0];
@@ -437,20 +398,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let endEdge = ele => ele[screenAxis] + bounds(ele)[size]; let endEdge = ele => ele[screenAxis] + bounds(ele)[size];
let lastMovingTabScreen = endEdge(lastMovingTab); let lastMovingTabScreen = endEdge(lastMovingTab);
let firstMovingTabScreen = firstMovingTab[screenAxis]; let firstMovingTabScreen = firstMovingTab[screenAxis];
@@ -2348,7 +2392,11 @@ @@ -2568,6 +2611,9 @@
translate = Math.min(Math.max(translate, firstBound), lastBound);
for (let tab of movingTabs) {
- tab.style.transform = `${translateAxis}(${translate}px)`;
+ if (tab.group?.hasAttribute("split-view-group")) {
+ tab.group.style.transform = `${translateAxis}(${translate}px)`;
+ } else {
+ tab.style.transform = `${translateAxis}(${translate}px)`;
+ }
}
dragData.translatePos = translate;
@@ -2485,6 +2533,9 @@
break; break;
} }
let element = tabs[mid]; let element = tabs[mid];
@@ -460,7 +408,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let elementForSize = isTabGroupLabel(element) let elementForSize = isTabGroupLabel(element)
? element.parentElement ? element.parentElement
: element; : element;
@@ -2507,6 +2558,10 @@ @@ -2590,6 +2636,10 @@
if (!dropElement) { if (!dropElement) {
dropElement = this.ariaFocusableItems[oldDropElementIndex]; dropElement = this.ariaFocusableItems[oldDropElementIndex];
} }
@@ -471,7 +419,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
let newDropElementIndex = dropElement let newDropElementIndex = dropElement
? dropElement.elementIndex ? dropElement.elementIndex
: oldDropElementIndex; : oldDropElementIndex;
@@ -2515,7 +2570,7 @@ @@ -2598,7 +2648,7 @@
let shouldCreateGroupOnDrop; let shouldCreateGroupOnDrop;
let dropBefore; let dropBefore;
if (dropElement) { if (dropElement) {
@@ -480,11 +428,11 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
? dropElement.parentElement ? dropElement.parentElement
: dropElement; : dropElement;
@@ -2566,12 +2621,12 @@ @@ -2660,12 +2710,12 @@
} }
} }
- if (gBrowser._tabGroupsEnabled && !isPinned) { - if (gBrowser._tabGroupsEnabled && isTab(draggedTab) && !isPinned) {
+ if (true) { + if (true) {
let dragOverGroupingThreshold = 1 - moveOverThreshold; let dragOverGroupingThreshold = 1 - moveOverThreshold;
@@ -495,7 +443,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
dropElement != draggedTab && dropElement != draggedTab &&
isTab(dropElement) && isTab(dropElement) &&
!dropElement?.group && !dropElement?.group &&
@@ -2639,7 +2694,7 @@ @@ -2735,7 +2785,7 @@
// Shift background tabs to leave a gap where the dragged tab // Shift background tabs to leave a gap where the dragged tab
// would currently be dropped. // would currently be dropped.
for (let item of tabs) { for (let item of tabs) {
@@ -504,7 +452,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
continue; continue;
} }
@@ -2648,6 +2703,9 @@ @@ -2744,6 +2794,9 @@
if (isTabGroupLabel(item)) { if (isTabGroupLabel(item)) {
// Shift the `.tab-group-label-container` to shift the label element. // Shift the `.tab-group-label-container` to shift the label element.
item = item.parentElement; item = item.parentElement;
@@ -514,19 +462,19 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
} }
item.style.transform = transform; item.style.transform = transform;
} }
@@ -2697,8 +2755,9 @@ @@ -2796,8 +2849,9 @@
); );
} }
- _finishAnimateTabMove() { - finishAnimateTabMove() {
- if (!this.hasAttribute("movingtab")) { - if (!this.#isMovingTab()) {
+ _finishAnimateTabMove(always = false) { + finishAnimateTabMove(always = false) {
+ gZenPinnedTabManager.removeTabContainersDragoverClass(); + gZenPinnedTabManager.removeTabContainersDragoverClass();
+ if (!this.hasAttribute("movingtab") && !always) { + if (!this.#isMovingTab() && !always) {
return; return;
} }
@@ -2711,6 +2770,12 @@ @@ -2809,6 +2863,12 @@
item = item.parentElement; item = item.parentElement;
} }
item.style.transform = ""; item.style.transform = "";
@@ -539,7 +487,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
item.removeAttribute("dragover-createGroup"); item.removeAttribute("dragover-createGroup");
} }
this.removeAttribute("movingtab-createGroup"); this.removeAttribute("movingtab-createGroup");
@@ -2754,7 +2819,7 @@ @@ -2855,7 +2915,7 @@
let postTransitionCleanup = () => { let postTransitionCleanup = () => {
movingTab._moveTogetherSelectedTabsData.animate = false; movingTab._moveTogetherSelectedTabsData.animate = false;
}; };
@@ -548,7 +496,7 @@ index 0fbdbf3aefc467880e6b0bae2615cb145735cb0f..75a30478387494c06e5c8131f55ba5dc
postTransitionCleanup(); postTransitionCleanup();
} else { } else {
let onTransitionEnd = transitionendEvent => { let onTransitionEnd = transitionendEvent => {
@@ -2924,7 +2989,7 @@ @@ -3028,7 +3088,7 @@
} }
_notifyBackgroundTab(aTab) { _notifyBackgroundTab(aTab) {

View File

@@ -1,13 +0,0 @@
diff --git a/browser/extensions/newtab/content-src/components/CustomizeMenu/ContentSection/ContentSection.jsx b/browser/extensions/newtab/content-src/components/CustomizeMenu/ContentSection/ContentSection.jsx
index dcf192d0ab7323d69f1bf505971e57c98ad4397d..a4d88304786af35030391f71bc99eee6cf7c1a64 100644
--- a/browser/extensions/newtab/content-src/components/CustomizeMenu/ContentSection/ContentSection.jsx
+++ b/browser/extensions/newtab/content-src/components/CustomizeMenu/ContentSection/ContentSection.jsx
@@ -188,7 +188,7 @@ export class ContentSection extends React.PureComponent {
data-l10n-args='{"num": 4}'
/>
</select>
- {mayHaveSponsoredTopSites && (
+ {false && (
<div className="check-wrapper" role="presentation">
<input
id="sponsored-shortcuts"

View File

@@ -1,5 +1,5 @@
diff --git a/browser/themes/shared/tabbrowser/tabs.css b/browser/themes/shared/tabbrowser/tabs.css diff --git a/browser/themes/shared/tabbrowser/tabs.css b/browser/themes/shared/tabbrowser/tabs.css
index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52c16c5227 100644 index f03eb840f363c01a0ab304659795b51f4f61a866..24a0c0cc573e27776843925b83cc919fa546aeb9 100644
--- a/browser/themes/shared/tabbrowser/tabs.css --- a/browser/themes/shared/tabbrowser/tabs.css
+++ b/browser/themes/shared/tabbrowser/tabs.css +++ b/browser/themes/shared/tabbrowser/tabs.css
@@ -32,7 +32,7 @@ @@ -32,7 +32,7 @@
@@ -11,7 +11,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
--tab-hover-background-color: color-mix(in srgb, currentColor 11%, transparent); --tab-hover-background-color: color-mix(in srgb, currentColor 11%, transparent);
--tab-selected-textcolor: var(--toolbar-color); --tab-selected-textcolor: var(--toolbar-color);
--tab-selected-bgcolor: var(--toolbar-bgcolor); --tab-selected-bgcolor: var(--toolbar-bgcolor);
@@ -214,8 +214,7 @@ @@ -210,8 +210,7 @@
} }
#tabbrowser-tabs[positionpinnedtabs] > #tabbrowser-arrowscrollbox > &[pinned] { #tabbrowser-tabs[positionpinnedtabs] > #tabbrowser-arrowscrollbox > &[pinned] {
@@ -20,16 +20,16 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
+ +
} }
#tabbrowser-tabs[movingtab] &:is([selected], [multiselected]) { #tabbrowser-tabs[movingtab] &:is(:active, [multiselected]) {
@@ -254,7 +253,6 @@ @@ -257,7 +256,6 @@
} }
:root:not([uidensity=compact]) &[pinned] { :root:not([uidensity=compact], [sidebar-expand-on-hover]) &[pinned] {
- padding: 0 10px; - padding: 0 10px;
} }
&:is([selected], [multiselected]) { &:is([selected], [multiselected]) {
@@ -268,6 +266,7 @@ @@ -271,6 +269,7 @@
border-radius: inherit; border-radius: inherit;
position: relative; position: relative;
overflow: hidden; overflow: hidden;
@@ -37,7 +37,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
&::before { &::before {
position: absolute; position: absolute;
@@ -442,6 +441,7 @@ @@ -458,6 +457,7 @@
.tab-icon-image { .tab-icon-image {
-moz-context-properties: fill, stroke; -moz-context-properties: fill, stroke;
fill: currentColor; fill: currentColor;
@@ -45,7 +45,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
/* Apply crisp rendering for favicons at exactly 2dppx resolution */ /* Apply crisp rendering for favicons at exactly 2dppx resolution */
@media (resolution: 2dppx) { @media (resolution: 2dppx) {
@@ -523,7 +523,7 @@ @@ -557,7 +557,7 @@
z-index: 1; /* Overlay tab title */ z-index: 1; /* Overlay tab title */
#tabbrowser-tabs[orient=vertical] & { #tabbrowser-tabs[orient=vertical] & {
@@ -54,7 +54,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
} }
&[crashed] { &[crashed] {
@@ -531,7 +531,7 @@ @@ -565,7 +565,7 @@
} }
#tabbrowser-tabs[orient="vertical"]:not([expanded]) &:not([crashed]), #tabbrowser-tabs[orient="vertical"]:not([expanded]) &:not([crashed]),
@@ -63,7 +63,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
&[soundplaying] { &[soundplaying] {
list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-playing-small.svg"); list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-playing-small.svg");
} }
@@ -561,7 +561,7 @@ @@ -595,7 +595,7 @@
background-image: linear-gradient(var(--audio-overlay-extra-background)), background-image: linear-gradient(var(--audio-overlay-extra-background)),
linear-gradient(var(--toolbox-bgcolor)); linear-gradient(var(--toolbox-bgcolor));
-moz-context-properties: fill; -moz-context-properties: fill;
@@ -72,44 +72,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
color-scheme: var(--tab-selected-color-scheme); color-scheme: var(--tab-selected-color-scheme);
border-radius: var(--border-radius-circle); border-radius: var(--border-radius-circle);
@@ -593,7 +593,7 @@ @@ -1362,7 +1362,7 @@ tab-group {
}
#tabbrowser-tabs[orient="vertical"]:not([expanded]) &:is([soundplaying], [muted], [activemedia-blocked]),
- &[pinned]:is([soundplaying], [muted], [activemedia-blocked]),
+ &:is([soundplaying], [muted], [activemedia-blocked]),
&[crashed] {
display: revert;
}
@@ -607,7 +607,7 @@
--button-min-height-small: 24px;
--button-border-radius: var(--border-radius-small);
- #tabbrowser-tabs:is([orient="vertical"][expanded], [orient="horizontal"]) &:not([pinned]):not([crashed]) {
+ #tabbrowser-tabs:is([orient="horizontal"]) &:not([pinned]):not([crashed]) {
&:is([soundplaying], [muted], [activemedia-blocked]) {
display: block;
}
@@ -638,14 +638,14 @@
}
&[textoverflow] {
- &[labeldirection=ltr]:not([pinned]),
- &:not([labeldirection], [pinned]):-moz-locale-dir(ltr) {
+ &[labeldirection=ltr],
+ &:not([labeldirection]):-moz-locale-dir(ltr) {
direction: ltr;
mask-image: linear-gradient(to left, transparent, black var(--tab-label-mask-size));
}
- &[labeldirection=rtl]:not([pinned]),
- &:not([labeldirection], [pinned]):-moz-locale-dir(rtl) {
+ &[labeldirection=rtl],
+ &:not([labeldirection]):-moz-locale-dir(rtl) {
direction: rtl;
mask-image: linear-gradient(to right, transparent, black var(--tab-label-mask-size));
}
@@ -1201,7 +1201,7 @@
} }
} }
@@ -118,7 +81,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
#vertical-tabs-newtab-button { #vertical-tabs-newtab-button {
appearance: none; appearance: none;
min-height: var(--tab-min-height); min-height: var(--tab-min-height);
@@ -1212,7 +1212,7 @@ @@ -1373,7 +1373,7 @@ tab-group {
margin-inline: var(--tab-inner-inline-margin); margin-inline: var(--tab-inner-inline-margin);
#tabbrowser-tabs[orient="vertical"]:not([expanded]) & > .toolbarbutton-text { #tabbrowser-tabs[orient="vertical"]:not([expanded]) & > .toolbarbutton-text {
@@ -127,7 +90,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
} }
&:hover { &:hover {
@@ -1236,7 +1236,7 @@ @@ -1397,7 +1397,7 @@ tab-group {
* flex container. #tabs-newtab-button is a child of the arrowscrollbox where * flex container. #tabs-newtab-button is a child of the arrowscrollbox where
* we don't want a gap (between tabs), so we have to add some margin. * we don't want a gap (between tabs), so we have to add some margin.
*/ */
@@ -136,15 +99,16 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
margin-block: var(--tab-block-margin); margin-block: var(--tab-block-margin);
} }
@@ -1260,7 +1260,6 @@ @@ -1471,8 +1471,6 @@ tab-group {
} }
#vertical-pinned-tabs-container { :root:not([sidebar-expand-on-hover]) & {
- --tab-inline-padding: calc((calc(var(--tab-collapsed-background-width) + 2 * var(--tab-pinned-margin-inline-expanded) - var(--icon-size-default)) / 2)); - --tab-inline-padding: calc((var(--tab-collapsed-background-width) + 2 *
display: none; - var(--tab-pinned-margin-inline-expanded) - var(--icon-size-default)) / 2);
grid-template-columns: repeat(auto-fit, minmax(var(--tab-pinned-min-width-expanded), auto)); /* stylelint-disable-next-line media-query-no-invalid */
overflow-y: auto; @media not -moz-pref("sidebar.visibility", "expand-on-hover") {
@@ -1480,7 +1479,7 @@ /* We need these rules to apply at all times when the sidebar.visibility
@@ -1717,7 +1715,7 @@ tab-group {
toolbarbutton:not(#firefox-view-button), toolbarbutton:not(#firefox-view-button),
toolbarpaletteitem:not(#wrapper-firefox-view-button) toolbarpaletteitem:not(#wrapper-firefox-view-button)
) ~ #tabbrowser-tabs { ) ~ #tabbrowser-tabs {
@@ -153,7 +117,7 @@ index bafbb39aac37843e3b6dceb0e81304af51e186cc..92b4fd725118150634ab2ae0a24efb52
padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width) + 2px); padding-inline-start: calc(var(--tab-overflow-pinned-tabs-width) + 2px);
margin-inline-start: 2px; margin-inline-start: 2px;
} }
@@ -1514,7 +1513,6 @@ toolbar:not(#TabsToolbar) #firefox-view-button { @@ -1751,7 +1749,6 @@ toolbar:not(#TabsToolbar) #firefox-view-button {
list-style-image: url(chrome://global/skin/icons/plus.svg); list-style-image: url(chrome://global/skin/icons/plus.svg);
} }

View File

@@ -1,20 +1,13 @@
diff --git a/browser/themes/windows/browser.css b/browser/themes/windows/browser.css diff --git a/browser/themes/windows/browser.css b/browser/themes/windows/browser.css
index 9af78803f0005a2b89e1c73f52153ed4d9e3154a..b63dc3d050144f048ac6a326acd57cc85fa8a3a7 100644 index 3e75a5f366e76acf4b9457a510b58b0cb8af580f..4962151f34ff52e8d009b82a9a12da99c4745a7a 100644
--- a/browser/themes/windows/browser.css --- a/browser/themes/windows/browser.css
+++ b/browser/themes/windows/browser.css +++ b/browser/themes/windows/browser.css
@@ -40,14 +40,13 @@ @@ -57,7 +57,7 @@
* override these on the tabs toolbar because the accent color is
* arbitrary, so the hardcoded colors from browser-custom-colors might
* not provide sufficient contrast. */
- --toolbarbutton-icon-fill: currentColor;
--toolbarbutton-hover-background: color-mix(in srgb, currentColor 17%, transparent);
--toolbarbutton-active-background: color-mix(in srgb, currentColor 30%, transparent);
} }
} }
&[sizemode="normal"] #navigator-toolbox { - &[sizemode="normal"] #navigator-toolbox {
- border-top: .5px solid ActiveBorder; + &[sizemode="normal"] #browser {
+ /* border-top: .5px solid ActiveBorder; Zen: Remove annoying top border, dont remove */ border-top: .5px solid ActiveBorder;
&:-moz-window-inactive { &:-moz-window-inactive {
border-top-color: InactiveBorder; border-top-color: InactiveBorder;
}

View File

@@ -11,10 +11,3 @@
value: 1 value: 1
mirror: always mirror: always
#endif #endif
#ifdef XP_WIN
- name: zen.widget.windows.acrylic
type: bool
value: true
mirror: always
#endif

View File

@@ -1,12 +1,12 @@
diff --git a/toolkit/content/aboutSupport.xhtml b/toolkit/content/aboutSupport.xhtml diff --git a/toolkit/content/aboutSupport.xhtml b/toolkit/content/aboutSupport.xhtml
index 05e3d72a6e67900e9b3d9bfd35c89b056c7ca747..55408e77830492765c976dd967ca14a7b74cba97 100644 index 296259cd0360a403e8659e22d0c08e968529a38a..bde1ee8d0a05e6ce2eb3ff8ff8a19ba28c20af98 100644
--- a/toolkit/content/aboutSupport.xhtml --- a/toolkit/content/aboutSupport.xhtml
+++ b/toolkit/content/aboutSupport.xhtml +++ b/toolkit/content/aboutSupport.xhtml
@@ -31,6 +31,7 @@ @@ -10,6 +10,7 @@
#ifndef ANDROID
<link rel="localization" href="toolkit/featuregates/features.ftl"/>
#endif
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
</head>
<body class="wide-container"> <html xmlns="http://www.w3.org/1999/xhtml">
<head>
+ <script src="chrome://browser/content/zenThemeModifier.js"></script>
<meta http-equiv="Content-Security-Policy" content="default-src chrome:; object-src 'none'" />
<meta name="color-scheme" content="light dark" />
<title data-l10n-id="page-title"/>

View File

@@ -1,9 +1,9 @@
diff --git a/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs b/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs diff --git a/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs b/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
index 3af9a7779dd43a6ded906ceaf6768c56d53c8605..c0b597fa3f8073b9bfb4118d5352246a5b54c2d7 100644 index 2cafde2156680a557081c5b82923f14618749358..0f4f5160f649165df80f35fbe72e02786a5b867e 100644
--- a/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs --- a/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
+++ b/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs +++ b/toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
@@ -2556,8 +2556,8 @@ export var XPIProvider = { @@ -2674,8 +2674,8 @@ export var XPIProvider = {
} if (AppConstants.platform != "android") {
// Keep version in sync with toolkit/mozapps/extensions/default-theme/manifest.json // Keep version in sync with toolkit/mozapps/extensions/default-theme/manifest.json
this.maybeInstallBuiltinAddon( this.maybeInstallBuiltinAddon(
- "default-theme@mozilla.org", - "default-theme@mozilla.org",
@@ -12,4 +12,4 @@ index 3af9a7779dd43a6ded906ceaf6768c56d53c8605..c0b597fa3f8073b9bfb4118d5352246a
+ "1.3", + "1.3",
"resource://default-theme/" "resource://default-theme/"
); );
}

View File

@@ -1,32 +1,15 @@
diff --git a/toolkit/themes/shared/popup.css b/toolkit/themes/shared/popup.css diff --git a/toolkit/themes/shared/popup.css b/toolkit/themes/shared/popup.css
index ed0caa97db5726a7d1bc1cd0aa7af3fdf99690dc..ce49d7f6900a1184c9aed00c26bd7b42916482aa 100644 index 5701d305fdfc0407ead51aa52eefee38e7429de8..642325e981e9597eaaefefa725852a49b49ee6dc 100644
--- a/toolkit/themes/shared/popup.css --- a/toolkit/themes/shared/popup.css
+++ b/toolkit/themes/shared/popup.css +++ b/toolkit/themes/shared/popup.css
@@ -21,8 +21,8 @@ panel { @@ -22,8 +22,8 @@ panel {
--panel-border-color: ThreeDShadow; --panel-border-color: ThreeDShadow;
--panel-width: initial; --panel-width: initial;
- --panel-shadow-margin: 0px; - --panel-shadow-margin: 4px;
- --panel-shadow: 0 0 var(--panel-shadow-margin) hsla(0,0%,0%,.2); - --panel-shadow: 0 0 var(--panel-shadow-margin) hsla(0,0%,0%,.2);
+ --panel-shadow-margin: 10px; + --panel-shadow-margin: 10px;
+ --panel-shadow: var(--zen-big-shadow); + --panel-shadow: var(--zen-big-shadow);
-moz-window-input-region-margin: var(--panel-shadow-margin); -moz-window-input-region-margin: var(--panel-shadow-margin);
margin: calc(-1 * var(--panel-shadow-margin)); margin: calc(-1 * var(--panel-shadow-margin));
@@ -30,8 +30,6 @@ panel {
--background-color-canvas: var(--panel-background);
@media (-moz-platform: linux) {
- --panel-border-radius: 8px;
- --panel-padding-block: 3px;
@media (prefers-contrast) {
--panel-border-color: color-mix(in srgb, currentColor 60%, transparent);
@@ -208,7 +206,6 @@ panel:where([type="arrow"]) {
}
&[animating] {
- pointer-events: none;
}
}
}

View File

@@ -1,12 +0,0 @@
diff --git a/widget/windows/WinUtils.cpp b/widget/windows/WinUtils.cpp
index 598c96cbb5cd06a986a5793ebe9c5438d419d4a9..de1317749e6a6dd7df644818970d7706a51e6c14 100644
--- a/widget/windows/WinUtils.cpp
+++ b/widget/windows/WinUtils.cpp
@@ -2007,6 +2007,7 @@ bool WinUtils::GetTimezoneName(wchar_t* aBuffer) {
static constexpr nsLiteralCString kMicaPrefs[] = {
"widget.windows.mica"_ns,
"widget.windows.mica.popups"_ns,
+ "zen.widget.windows.acrylic"_ns,
};
static BOOL CALLBACK UpdateMicaInHwnd(HWND aHwnd, LPARAM aLParam) {

View File

@@ -1,21 +0,0 @@
diff --git a/widget/windows/nsWindow.cpp b/widget/windows/nsWindow.cpp
index d2863d5fd9ce5cedc88253a07cb061a660d42e61..5c1097ad16cd6e27e76cc6dfbed85218d36cc36f 100644
--- a/widget/windows/nsWindow.cpp
+++ b/widget/windows/nsWindow.cpp
@@ -165,6 +165,7 @@
#include "mozilla/StaticPrefs_layout.h"
#include "mozilla/StaticPrefs_ui.h"
#include "mozilla/StaticPrefs_widget.h"
+#include "mozilla/StaticPrefs_zen.h"
#include "nsNativeAppSupportWin.h"
#include "nsIGfxInfo.h"
@@ -2546,7 +2547,7 @@ void nsWindow::UpdateMicaBackdrop(bool aForce) {
if (!useBackdrop) {
return DWMSBT_AUTO;
}
- return IsPopup() ? DWMSBT_TRANSIENTWINDOW : DWMSBT_TABBEDWINDOW;
+ return IsPopup() ? DWMSBT_TRANSIENTWINDOW : (StaticPrefs::zen_widget_windows_acrylic() ? DWMSBT_TRANSIENTWINDOW : DWMSBT_TABBEDWINDOW);
}();
::DwmSetWindowAttribute(mWnd, DWMWA_SYSTEMBACKDROP_TYPE, &backdrop,
sizeof backdrop);

View File

@@ -6,7 +6,7 @@ ChromeUtils.defineESModuleGetters(lazy, {
class ZenUIMigration { class ZenUIMigration {
PREF_NAME = 'zen.migration.version'; PREF_NAME = 'zen.migration.version';
MIGRATION_VERSION = 1; MIGRATION_VERSION = 2;
init(isNewProfile, win) { init(isNewProfile, win) {
if (!isNewProfile) { if (!isNewProfile) {
@@ -27,13 +27,16 @@ class ZenUIMigration {
if (this._migrationVersion < 1) { if (this._migrationVersion < 1) {
this._migrateV1(win); this._migrateV1(win);
} }
if (this._migrationVersion < 2) {
this._migrateV2(win);
}
} }
clearVariables() { clearVariables() {
this._migrationVersion = this.MIGRATION_VERSION; this._migrationVersion = this.MIGRATION_VERSION;
} }
async _migrateV1(win) { _migrateV1(win) {
// Introduction of the new URL bar, show a message to the user // Introduction of the new URL bar, show a message to the user
const notification = win.gNotificationBox.appendNotification( const notification = win.gNotificationBox.appendNotification(
'zen-new-urlbar-notification', 'zen-new-urlbar-notification',
@@ -57,6 +60,13 @@ class ZenUIMigration {
] ]
); );
} }
_migrateV2(win) {
if (Services.prefs.getBoolPref('zen.widget.windows.acrylic', false)) {
Services.prefs.setIntPref('widget.windows.mica.toplevel-backdrop', 2);
Services.prefs.clearUserPref('zen.widget.windows.acrylic');
}
}
} }
export var gZenUIMigration = new ZenUIMigration(); export var gZenUIMigration = new ZenUIMigration();

View File

@@ -163,7 +163,7 @@
@media (-moz-windows-mica) or (-moz-platform: macos) { @media (-moz-windows-mica) or (-moz-platform: macos) {
background: transparent; background: transparent;
--zen-themed-toolbar-bg-transparent: transparent; --zen-themed-toolbar-bg-transparent: transparent;
@media -moz-pref('zen.widget.windows.acrylic') { @media -moz-pref("widget.windows.mica.toplevel-backdrop", 2) {
--zen-themed-toolbar-bg-transparent: color-mix(in srgb, var(--zen-themed-toolbar-bg) 35%, transparent 65%); --zen-themed-toolbar-bg-transparent: color-mix(in srgb, var(--zen-themed-toolbar-bg) 35%, transparent 65%);
} }
} }

View File

@@ -187,7 +187,7 @@ class ZenViewSplitter extends ZenDOMOperatedFeature {
if (!draggedTab || gBrowser.selectedTab.hasAttribute('zen-empty-tab')) { if (!draggedTab || gBrowser.selectedTab.hasAttribute('zen-empty-tab')) {
return; return;
} }
draggedTab.container._finishMoveTogetherSelectedTabs(draggedTab); draggedTab.container.finishMoveTogetherSelectedTabs(draggedTab);
} }
if ( if (
!draggedTab || !draggedTab ||

View File

@@ -16,7 +16,7 @@ z-index: 1;
&:not([zen-has-hover='true']):not([has-popup-menu]):not(:focus-within):not(:has(*:is([panelopen='true'], [open='true']))) { &:not([zen-has-hover='true']):not([has-popup-menu]):not(:focus-within):not(:has(*:is([panelopen='true'], [open='true']))) {
transition-delay: 0.2s; transition-delay: 0.2s;
height: calc(var(--zen-element-separation) + 0.5px); height: var(--zen-element-separation);
overflow: hidden; overflow: hidden;
opacity: 0; opacity: 0;
& > * { & > * {