Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5d4e91e61 | ||
|
|
5787c7d664 | ||
|
|
1518ea71f4 |
@@ -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 {
|
||||
|
||||
@@ -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 @@
|
||||
}
|
||||
}
|
||||
|
||||
@@ -259,6 +259,9 @@
|
||||
}
|
||||
}
|
||||
|
||||
const browserSidebarContainer = this.#currentParentTab?.linkedBrowser?.closest(
|
||||
'.browserSidebarContainer'
|
||||
);
|
||||
const sidebarButtons = this.browserWrapper.querySelector('.zen-glance-sidebar-container');
|
||||
if (onTabClose && hasFocused && !this.#confirmationTimeout && sidebarButtons) {
|
||||
const cancelButton = sidebarButtons?.querySelector('.zen-glance-sidebar-close');
|
||||
@@ -272,9 +275,7 @@
|
||||
|
||||
this.browserWrapper.removeAttribute('has-finished-animation');
|
||||
if (noAnimation) {
|
||||
this._clearContainerStyles(
|
||||
this.#currentParentTab?.linkedBrowser?.closest('.browserSidebarContainer')
|
||||
);
|
||||
this._clearContainerStyles(browserSidebarContainer);
|
||||
this.quickCloseGlance({ closeCurrentTab: false });
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
"brandShortName": "Zen",
|
||||
"brandFullName": "Zen Browser",
|
||||
"release": {
|
||||
"displayVersion": "1.14.8b",
|
||||
"displayVersion": "1.14.9b",
|
||||
"github": {
|
||||
"repo": "zen-browser/desktop"
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user