mirror of
https://github.com/zen-browser/desktop.git
synced 2026-08-29 01:41:33 +00:00
gh-15146: Fix bad current view index after removing a group (gh-15147)
This commit is contained in:
@@ -358,7 +358,9 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
||||
) {
|
||||
return;
|
||||
}
|
||||
const currentView = this._data[this._lastOpenedTab.splitViewValue];
|
||||
const currentView = this._data.find(group =>
|
||||
group.tabs.includes(this._lastOpenedTab)
|
||||
);
|
||||
if (currentView?.tabs.length >= this.MAX_TABS) {
|
||||
return;
|
||||
}
|
||||
@@ -543,7 +545,9 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
||||
const panelsWidth = panelsRect.width;
|
||||
const panelsHeight = panelsRect.height;
|
||||
let numOfTabsToDivide = 2;
|
||||
const currentView = this._data[this._lastOpenedTab.splitViewValue];
|
||||
const currentView = this._data.find(group =>
|
||||
group.tabs.includes(this._lastOpenedTab)
|
||||
);
|
||||
if (currentView) {
|
||||
numOfTabsToDivide = currentView.tabs.length + 1;
|
||||
}
|
||||
@@ -1106,7 +1110,6 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
||||
*/
|
||||
resetTabState(tab, forUnsplit) {
|
||||
tab.splitView = false;
|
||||
delete tab.splitViewValue;
|
||||
tab.removeAttribute("split-view");
|
||||
tab.linkedBrowser.zenModeActive = false;
|
||||
const container = tab.linkedBrowser.closest(".browserSidebarContainer");
|
||||
@@ -1150,6 +1153,8 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
||||
}
|
||||
if (this.currentView === groupIndex) {
|
||||
this.deactivateCurrentSplitView();
|
||||
} else if (this.currentView > groupIndex) {
|
||||
this.currentView--;
|
||||
}
|
||||
for (const tab of this._data[groupIndex].tabs) {
|
||||
this.resetTabState(tab, true);
|
||||
@@ -1641,7 +1646,6 @@ class nsZenViewSplitter extends nsZenDOMOperatedFeature {
|
||||
applyGridToTabs(tabs) {
|
||||
tabs.forEach(tab => {
|
||||
tab.splitView = true;
|
||||
tab.splitViewValue = this.currentView;
|
||||
tab.setAttribute("split-view", "true");
|
||||
const container = tab.linkedBrowser?.closest(".browserSidebarContainer");
|
||||
container.setAttribute("is-zen-split", "true");
|
||||
|
||||
Reference in New Issue
Block a user