mirror of
https://github.com/zen-browser/desktop.git
synced 2025-09-07 11:58:20 +00:00
fix: Fixed moving tabs around with scrollbox overflowing, b=(no-bug), c=tabs, workspaces
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
|
diff --git a/browser/components/tabbrowser/content/tabs.js b/browser/components/tabbrowser/content/tabs.js
|
||||||
index ef9c0389ec926e6bc01c0dc3b883beceaf1f7d43..62fcba41ec1976e24343a54f8dd146a430a6640e 100644
|
index ef9c0389ec926e6bc01c0dc3b883beceaf1f7d43..f326895a66dcbd4961cb1a4e8310ae80a181b60e 100644
|
||||||
--- a/browser/components/tabbrowser/content/tabs.js
|
--- a/browser/components/tabbrowser/content/tabs.js
|
||||||
+++ b/browser/components/tabbrowser/content/tabs.js
|
+++ b/browser/components/tabbrowser/content/tabs.js
|
||||||
@@ -83,7 +83,7 @@
|
@@ -83,7 +83,7 @@
|
||||||
@@ -393,7 +393,7 @@ index ef9c0389ec926e6bc01c0dc3b883beceaf1f7d43..62fcba41ec1976e24343a54f8dd146a4
|
|||||||
let translateX = event.screenX - dragData.screenX;
|
let translateX = event.screenX - dragData.screenX;
|
||||||
let translateY = event.screenY - dragData.screenY;
|
let translateY = event.screenY - dragData.screenY;
|
||||||
|
|
||||||
@@ -2407,10 +2450,19 @@
|
@@ -2407,14 +2450,23 @@
|
||||||
let lastTab = tabs.at(-1);
|
let lastTab = tabs.at(-1);
|
||||||
let lastMovingTab = movingTabs.at(-1);
|
let lastMovingTab = movingTabs.at(-1);
|
||||||
let firstMovingTab = movingTabs[0];
|
let firstMovingTab = movingTabs[0];
|
||||||
@@ -411,8 +411,14 @@ index ef9c0389ec926e6bc01c0dc3b883beceaf1f7d43..62fcba41ec1976e24343a54f8dd146a4
|
|||||||
+ shiftSize += 5; // A hack to allow more space for the group
|
+ shiftSize += 5; // A hack to allow more space for the group
|
||||||
+ }
|
+ }
|
||||||
let translate = screen - dragData[screenAxis];
|
let translate = screen - dragData[screenAxis];
|
||||||
if (!isPinned) {
|
- if (!isPinned) {
|
||||||
|
+ if (true) {
|
||||||
translate +=
|
translate +=
|
||||||
|
- this.arrowScrollbox.scrollbox[scrollDirection] - dragData.scrollPos;
|
||||||
|
+ gZenWorkspaces.activeScrollbox.scrollbox[scrollDirection] - dragData.scrollPos;
|
||||||
|
} else if (isPinned && this.verticalMode) {
|
||||||
|
translate +=
|
||||||
|
this.verticalPinnedTabsContainer.scrollTop - dragData.scrollPos;
|
||||||
@@ -2431,6 +2483,9 @@
|
@@ -2431,6 +2483,9 @@
|
||||||
// Shift the `.tab-group-label-container` to shift the label element.
|
// Shift the `.tab-group-label-container` to shift the label element.
|
||||||
item = item.parentElement;
|
item = item.parentElement;
|
||||||
|
@@ -346,6 +346,13 @@ var gZenWorkspaces = new (class extends ZenMultiWindowFeature {
|
|||||||
return document.querySelector(`zen-workspace[active]`)?.indicator;
|
return document.querySelector(`zen-workspace[active]`)?.indicator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get activeScrollbox() {
|
||||||
|
return (
|
||||||
|
document.querySelector(`zen-workspace[active]`)?.scrollbox ??
|
||||||
|
gBrowser.tabContainer.arrowScrollbox
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
get tabboxChildren() {
|
get tabboxChildren() {
|
||||||
return Array.from(this.activeWorkspaceStrip?.children || []);
|
return Array.from(this.activeWorkspaceStrip?.children || []);
|
||||||
}
|
}
|
||||||
@@ -2393,6 +2400,7 @@ var gZenWorkspaces = new (class extends ZenMultiWindowFeature {
|
|||||||
gZenThemePicker.onWorkspaceChange(workspace);
|
gZenThemePicker.onWorkspaceChange(workspace);
|
||||||
|
|
||||||
gZenUIManager.tabsWrapper.scrollbarWidth = 'none';
|
gZenUIManager.tabsWrapper.scrollbarWidth = 'none';
|
||||||
|
this.workspaceIcons.activeIndex = workspace.uuid;
|
||||||
await this._animateTabs(workspace, !onInit && !this._animatingChange, tabToSelect, {
|
await this._animateTabs(workspace, !onInit && !this._animatingChange, tabToSelect, {
|
||||||
previousWorkspaceIndex,
|
previousWorkspaceIndex,
|
||||||
previousWorkspace,
|
previousWorkspace,
|
||||||
@@ -2437,8 +2445,6 @@ var gZenWorkspaces = new (class extends ZenMultiWindowFeature {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.workspaceIcons.activeIndex = workspace.uuid;
|
|
||||||
|
|
||||||
setTimeout(gURLBar.formatValue.bind(gURLBar), 0);
|
setTimeout(gURLBar.formatValue.bind(gURLBar), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user