Bug 1949840 - Rename dropTab and dropTabs methods now that we use them not just for dropping. r=dwalker,tabbrowser-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D239189
This commit is contained in:
@@ -5788,11 +5788,43 @@
|
||||
/**
|
||||
* @param {MozTabbrowserTab} tab
|
||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup} targetElement
|
||||
* @param {boolean} dropBefore
|
||||
*/
|
||||
dropTab(tab, targetElement, dropBefore) {
|
||||
moveTabBefore(tab, targetElement) {
|
||||
this.#moveTabNextTo(tab, targetElement, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {MozTabbrowserTab[]} tabs
|
||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup} targetElement
|
||||
*/
|
||||
moveTabsBefore(tabs, targetElement) {
|
||||
this.#moveTabsNextTo(tabs, targetElement, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {MozTabbrowserTab} tab
|
||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup} targetElement
|
||||
*/
|
||||
moveTabAfter(tab, targetElement) {
|
||||
this.#moveTabNextTo(tab, targetElement, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {MozTabbrowserTab[]} tabs
|
||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup} targetElement
|
||||
*/
|
||||
moveTabsAfter(tabs, targetElement) {
|
||||
this.#moveTabsNextTo(tabs, targetElement, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {MozTabbrowserTab} tab
|
||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup} targetElement
|
||||
* @param {boolean} moveBefore
|
||||
*/
|
||||
#moveTabNextTo(tab, targetElement, moveBefore = false) {
|
||||
this._handleTabMove(tab, () => {
|
||||
if (dropBefore) {
|
||||
if (moveBefore) {
|
||||
this.tabContainer.insertBefore(tab, targetElement);
|
||||
} else if (targetElement) {
|
||||
targetElement.after(tab);
|
||||
@@ -5805,12 +5837,12 @@
|
||||
/**
|
||||
* @param {MozTabbrowserTab[]} tabs
|
||||
* @param {MozTabbrowserTab|MozTabbrowserTabGroup} targetElement
|
||||
* @param {dropBefore} dropBefore
|
||||
* @param {boolean} moveBefore
|
||||
*/
|
||||
dropTabs(tabs, targetElement, dropBefore) {
|
||||
this.dropTab(tabs[0], targetElement, dropBefore);
|
||||
#moveTabsNextTo(tabs, targetElement, moveBefore = false) {
|
||||
this.#moveTabNextTo(tabs[0], targetElement, moveBefore);
|
||||
for (let i = 1; i < tabs.length; i++) {
|
||||
this.dropTab(tabs[i], tabs[i - 1]);
|
||||
this.#moveTabNextTo(tabs[i], tabs[i - 1]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1096,6 +1096,21 @@
|
||||
shouldTranslate &&= oldTranslateX && oldTranslateX != newTranslateX;
|
||||
}
|
||||
|
||||
let moveTabs = () => {
|
||||
if (dropIndex !== undefined) {
|
||||
for (let tab of movingTabs) {
|
||||
gBrowser.moveTabTo(tab, dropIndex);
|
||||
if (!directionForward) {
|
||||
dropIndex++;
|
||||
}
|
||||
}
|
||||
} else if (dropBefore) {
|
||||
gBrowser.moveTabsBefore(movingTabs, dropElement);
|
||||
} else {
|
||||
gBrowser.moveTabsAfter(movingTabs, dropElement);
|
||||
}
|
||||
};
|
||||
|
||||
if (shouldTranslate) {
|
||||
let translationPromises = [];
|
||||
for (let tab of movingTabs) {
|
||||
@@ -1127,16 +1142,7 @@
|
||||
}
|
||||
Promise.all(translationPromises).then(() => {
|
||||
this._finishAnimateTabMove();
|
||||
if (dropIndex !== undefined) {
|
||||
for (let tab of movingTabs) {
|
||||
gBrowser.moveTabTo(tab, dropIndex);
|
||||
if (!directionForward) {
|
||||
dropIndex++;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
gBrowser.dropTabs(movingTabs, dropElement, dropBefore);
|
||||
}
|
||||
moveTabs();
|
||||
});
|
||||
} else {
|
||||
this._finishAnimateTabMove();
|
||||
@@ -1151,15 +1157,8 @@
|
||||
showCreateUI: true,
|
||||
color: draggedTab._dragData.tabGroupCreationColor,
|
||||
});
|
||||
} else if (dropIndex !== undefined) {
|
||||
for (let tab of movingTabs) {
|
||||
gBrowser.moveTabTo(tab, dropIndex);
|
||||
if (!directionForward) {
|
||||
dropIndex++;
|
||||
}
|
||||
}
|
||||
} else if (dropElement) {
|
||||
gBrowser.dropTabs(movingTabs, dropElement, dropBefore);
|
||||
} else {
|
||||
moveTabs();
|
||||
}
|
||||
}
|
||||
} else if (draggedTab) {
|
||||
@@ -2844,7 +2843,7 @@
|
||||
if (animate) {
|
||||
addAnimationData(movingTab, true);
|
||||
} else {
|
||||
gBrowser.dropTab(movingTab, tab, true);
|
||||
gBrowser.moveTabBefore(movingTab, tab);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2854,7 +2853,7 @@
|
||||
if (animate) {
|
||||
addAnimationData(movingTab, false);
|
||||
} else {
|
||||
gBrowser.dropTab(movingTab, tab, false);
|
||||
gBrowser.moveTabAfter(movingTab, tab);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2890,12 +2889,12 @@
|
||||
|
||||
// Moving left or top tabs
|
||||
for (let i = 0; i < tabIndex; i++) {
|
||||
gBrowser.dropTab(selectedTabs[i], tab, true);
|
||||
gBrowser.moveTabBefore(selectedTabs[i], tab);
|
||||
}
|
||||
|
||||
// Moving right or bottom tabs
|
||||
for (let i = selectedTabs.length - 1; i > tabIndex; i--) {
|
||||
gBrowser.dropTab(selectedTabs[i], tab, false);
|
||||
gBrowser.moveTabAfter(selectedTabs[i], tab);
|
||||
}
|
||||
|
||||
for (let item of this.ariaFocusableItems) {
|
||||
|
||||
Reference in New Issue
Block a user