Compare commits

..

6 Commits

6 changed files with 45 additions and 22 deletions

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabbrowser.js b/browser/components/tabbrowser/content/tabbrowser.js
index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a92b6a07d6 100644
index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..32b3e4cd13c2fffa4630e49f209e382cc1fcac10 100644
--- a/browser/components/tabbrowser/content/tabbrowser.js
+++ b/browser/components/tabbrowser/content/tabbrowser.js
@@ -422,15 +422,49 @@
@@ -364,10 +364,10 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
+ gZenWorkspaces._initialTab._shouldRemove = true;
+ }
+ }
}
+ }
+ else {
+ gZenWorkspaces._tabToRemoveForEmpty = this.selectedTab;
+ }
}
+ this._hasAlreadyInitializedZenSessionStore = true;
if (tabs.length > 1 || !tabs[0].selected) {
@@ -603,7 +603,14 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
if (neighbor && this.isTab(element) && tabIndex > element._tPos) {
neighbor.after(element);
} else {
@@ -6122,7 +6252,7 @@
@@ -6116,13 +6246,13 @@
#moveTabNextTo(element, targetElement, moveBefore = false, metricsContext) {
if (this.isTabGroupLabel(targetElement)) {
targetElement = targetElement.group;
- if (!moveBefore && !targetElement.collapsed) {
+ if (!moveBefore && !targetElement.collapsed && !targetElement.hasAttribute("split-view-group")) {
// Right after the tab group label = before the first tab in the tab group
targetElement = targetElement.tabs[0];
moveBefore = true;
}
}
@@ -612,10 +619,13 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
element = element.group;
if (targetElement?.group) {
targetElement = targetElement.group;
@@ -6130,8 +6260,12 @@
@@ -6130,8 +6260,15 @@
}
// Don't allow mixing pinned and unpinned tabs.
+ if (targetElement.group?.hasAttribute("split-view-group")) {
+ targetElement = targetElement.group;
+ }
+ targetElement = gZenGlanceManager.getTabOrGlanceParent(targetElement);
+ if (element.hasAttribute('zen-essential') && !targetElement?.hasAttribute('zen-essential')) {
+ targetElement = this.tabsWithoutGlance[this._numZenEssentials - 1];
@@ -626,7 +636,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
moveBefore = false;
} else if (!element.pinned && targetElement && targetElement.pinned) {
// If the caller asks to move an unpinned element next to a pinned
@@ -6145,7 +6279,7 @@
@@ -6145,7 +6282,7 @@
// move the tab group right before the first unpinned tab.
// 4. Moving a tab group and the first unpinned tab is grouped:
// move the tab group right before the first unpinned tab's tab group.
@@ -635,7 +645,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
if (targetElement.group) {
targetElement = targetElement.group;
}
@@ -6153,6 +6287,7 @@
@@ -6153,6 +6290,7 @@
}
let getContainer = () =>
@@ -643,7 +653,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
element.pinned
? this.tabContainer.pinnedTabsContainer
: this.tabContainer;
@@ -6210,7 +6345,7 @@
@@ -6210,7 +6348,7 @@
if (!this.isTab(aTab)) {
throw new Error("Can only move a tab into a tab group");
}
@@ -652,7 +662,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
return;
}
if (aTab.group && aTab.group.id === aGroup.id) {
@@ -6304,6 +6439,10 @@
@@ -6304,6 +6442,10 @@
moveActionCallback();
@@ -663,7 +673,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
// Clear tabs cache after moving nodes because the order of tabs may have
// changed.
this.tabContainer._invalidateCachedTabs();
@@ -7198,7 +7337,7 @@
@@ -7198,7 +7340,7 @@
// preventDefault(). It will still raise the window if appropriate.
break;
}
@@ -672,7 +682,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
window.focus();
aEvent.preventDefault();
break;
@@ -8143,6 +8282,7 @@
@@ -8143,6 +8285,7 @@
aWebProgress.isTopLevel
) {
this.mTab.setAttribute("busy", "true");
@@ -680,7 +690,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
gBrowser._tabAttrModified(this.mTab, ["busy"]);
this.mTab._notselectedsinceload = !this.mTab.selected;
}
@@ -9108,7 +9248,7 @@ var TabContextMenu = {
@@ -9108,7 +9251,7 @@ var TabContextMenu = {
);
contextUnpinSelectedTabs.hidden =
!this.contextTab.pinned || !this.multiselected;
@@ -689,7 +699,7 @@ index 96fd8acdc09cc4c9649d1ed7503c2a0bde536613..87fb109037d13183e76184201de600a9
// Move Tab items
let contextMoveTabOptions = document.getElementById(
"context_moveTabOptions"
@@ -9384,6 +9524,7 @@ var TabContextMenu = {
@@ -9384,6 +9527,7 @@ var TabContextMenu = {
)
);
} else {

View File

@@ -1,5 +1,5 @@
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
index 1fcebe3962398ff1b7cadef657ac8b68a80e720d..bd64221c60aa2c2f4efdf765299ed03077710ff9 100644
index 1fcebe3962398ff1b7cadef657ac8b68a80e720d..d3c0a1ac7f24301e56cb46e83a4d9b8e2ccc453a 100644
--- a/browser/components/tabbrowser/content/tabs.js
+++ b/browser/components/tabbrowser/content/tabs.js
@@ -289,6 +289,7 @@
@@ -409,6 +409,15 @@ index 1fcebe3962398ff1b7cadef657ac8b68a80e720d..bd64221c60aa2c2f4efdf765299ed030
? dropElement.parentElement
: dropElement;
@@ -2659,7 +2736,7 @@
if (
isTabGroupLabel(draggedTab) &&
dropElement?.group &&
- !dropElement.group.collapsed
+ !dropElement.group.collapsed && !dropElement.group.hasAttribute("split-view-group")
) {
let overlappedGroup = dropElement.group;
@@ -2686,12 +2763,7 @@
}
}

View File

@@ -644,3 +644,7 @@ button.popup-notification-dropmarker {
}
}
}
#urlbar-results .action-contextualidentity {
display: none;
}

View File

@@ -262,8 +262,9 @@
const browserSidebarContainer = this.#currentParentTab?.linkedBrowser?.closest(
'.browserSidebarContainer'
);
if (onTabClose && hasFocused && !this.#confirmationTimeout && browserSidebarContainer) {
const cancelButton = browserSidebarContainer?.querySelector('.zen-glance-sidebar-close');
const sidebarButtons = this.browserWrapper.querySelector('.zen-glance-sidebar-container');
if (onTabClose && hasFocused && !this.#confirmationTimeout && sidebarButtons) {
const cancelButton = sidebarButtons?.querySelector('.zen-glance-sidebar-close');
cancelButton.setAttribute('waitconfirmation', true);
this.#confirmationTimeout = setTimeout(() => {
cancelButton.removeAttribute('waitconfirmation');
@@ -299,7 +300,6 @@
this.overlay.style.pointerEvents = 'none';
this.quickCloseGlance({ justAnimateParent: true, clearID: false });
const originalPosition = this.#glances.get(this.#currentGlanceID).originalPosition;
const sidebarButtons = this.browserWrapper.querySelector('.zen-glance-sidebar-container');
if (sidebarButtons) {
gZenUIManager.motion
.animate(

View File

@@ -1268,7 +1268,8 @@
getMostDominantColor(allColors) {
const color = this.getPrimaryColor(allColors);
if (typeof color === 'string') {
return this.hexToRgb(color);
// We found a custom color, we should rather return the native accent color
return this.getNativeAccentColor();
}
return color;
}
@@ -1448,15 +1449,14 @@
browser.document.documentElement.style.setProperty('--zen-primary-color', primaryColor);
browser.gZenThemePicker.isLegacyVersion = this.isLegacyVersion;
let isDarkMode = isDarkModeWindow;
const isUsingCustomColors = workspaceTheme.gradientColors.some((color) => color.isCustom);
if (!isDefaultTheme && !this.isLegacyVersion && !isUsingCustomColors) {
if (!isDefaultTheme && !this.isLegacyVersion) {
// Check for the primary color
isDarkMode = browser.gZenThemePicker.shouldBeDarkMode(dominantColor);
browser.document.documentElement.setAttribute('zen-should-be-dark-mode', isDarkMode);
browser.gZenThemePicker.panel.removeAttribute('invalidate-controls');
} else {
browser.document.documentElement.removeAttribute('zen-should-be-dark-mode');
if (!this.isLegacyVersion && !isUsingCustomColors) {
if (!this.isLegacyVersion) {
browser.gZenThemePicker.panel.setAttribute('invalidate-controls', 'true');
}
}

View File

@@ -19,7 +19,7 @@
"brandShortName": "Zen",
"brandFullName": "Zen Browser",
"release": {
"displayVersion": "1.14.7b",
"displayVersion": "1.14.9b",
"github": {
"repo": "zen-browser/desktop"
},