Skip to content

Commit 0866f24

Browse files
committed
Bug 1980240 - Refactor tabs drag and drop code into its own module r=tabbrowser-reviewers,sthompson
Differential Revision: https://phabricator.services.mozilla.com/D263022
1 parent 0e3aee4 commit 0866f24

File tree

7 files changed

+2899
-2771
lines changed

7 files changed

+2899
-2771
lines changed

browser/base/content/browser-main.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
Services.scriptloader.loadSubScript("chrome://browser/content/sidebar/browser-sidebar.js", this);
2222
Services.scriptloader.loadSubScript("chrome://browser/content/browser-customtitlebar.js", this);
2323
Services.scriptloader.loadSubScript("chrome://browser/content/browser-unified-extensions.js", this);
24+
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/drag-and-drop.js", this);
2425
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tab.js", this);
2526
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tabbrowser.js", this);
2627
Services.scriptloader.loadSubScript("chrome://browser/content/tabbrowser/tabgroup.js", this);

browser/base/content/test/performance/browser_tabdetach.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,9 @@
1212
const EXPECTED_REFLOWS = [
1313
{
1414
stack: [
15-
"clientPos@chrome://browser/content/tabbrowser/tabs.js",
16-
"startTabDrag@chrome://browser/content/tabbrowser/tabs.js",
15+
"clientPos@chrome://browser/content/tabbrowser/drag-and-drop.js",
16+
"startTabDrag@chrome://browser/content/tabbrowser/drag-and-drop.js",
17+
"handle_dragstart@chrome://browser/content/tabbrowser/drag-and-drop.js",
1718
"on_dragstart@chrome://browser/content/tabbrowser/tabs.js",
1819
"handleEvent@chrome://browser/content/tabbrowser/tabs.js",
1920
"synthesizeMouseAtPoint@chrome://mochikit/content/tests/SimpleTest/EventUtils.js",
@@ -26,7 +27,8 @@ const EXPECTED_REFLOWS = [
2627
{
2728
stack: [
2829
"get scrollPosition@chrome://global/content/elements/arrowscrollbox.js",
29-
"startTabDrag@chrome://browser/content/tabbrowser/tabs.js",
30+
"startTabDrag@chrome://browser/content/tabbrowser/drag-and-drop.js",
31+
"handle_dragstart@chrome://browser/content/tabbrowser/drag-and-drop.js",
3032
"on_dragstart@chrome://browser/content/tabbrowser/tabs.js",
3133
"handleEvent@chrome://browser/content/tabbrowser/tabs.js",
3234
"synthesizeMouseAtPoint@chrome://mochikit/content/tests/SimpleTest/EventUtils.js",
@@ -36,8 +38,9 @@ const EXPECTED_REFLOWS = [
3638
},
3739
{
3840
stack: [
39-
"#updateTabStylesOnDrag@chrome://browser/content/tabbrowser/tabs.js",
40-
"startTabDrag@chrome://browser/content/tabbrowser/tabs.js",
41+
"#updateTabStylesOnDrag@chrome://browser/content/tabbrowser/drag-and-drop.js",
42+
"startTabDrag@chrome://browser/content/tabbrowser/drag-and-drop.js",
43+
"handle_dragstart@chrome://browser/content/tabbrowser/drag-and-drop.js",
4144
"on_dragstart@chrome://browser/content/tabbrowser/tabs.js",
4245
"handleEvent@chrome://browser/content/tabbrowser/tabs.js",
4346
"synthesizeMouseAtPoint@chrome://mochikit/content/tests/SimpleTest/EventUtils.js",

browser/components/tabbrowser/TabsList.sys.mjs

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -706,9 +706,13 @@ export class TabsPanel extends TabsListBase {
706706
? getTabGroupFromRow(row).labelElement
707707
: getTabFromRow(row);
708708

709-
this.gBrowser.tabContainer.startTabDrag(event, elementToDrag, {
710-
fromTabList: true,
711-
});
709+
this.gBrowser.tabContainer.tabDragAndDrop.startTabDrag(
710+
event,
711+
elementToDrag,
712+
{
713+
fromTabList: true,
714+
}
715+
);
712716
}
713717

714718
/**
@@ -724,7 +728,8 @@ export class TabsPanel extends TabsListBase {
724728
* @returns {boolean}
725729
*/
726730
_isMovingTabs(event) {
727-
var effects = this.gBrowser.tabContainer.getDropEffectForTabDrag(event);
731+
var effects =
732+
this.gBrowser.tabContainer.tabDragAndDrop.getDropEffectForTabDrag(event);
728733
return effects == "move";
729734
}
730735

0 commit comments

Comments
 (0)