From 3b86f317d17084de5f4b130c778d37769fdb2944 Mon Sep 17 00:00:00 2001 From: "mr. m" Date: Fri, 7 Mar 2025 14:07:49 +0100 Subject: [PATCH] Fixed animating split views in --- .github/workflows/linux-release-build.yml | 4 ++++ src/browser/base/zen-components/ZenViewSplitter.mjs | 9 ++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/linux-release-build.yml b/.github/workflows/linux-release-build.yml index b19c1f3c2..5246a9aa0 100644 --- a/.github/workflows/linux-release-build.yml +++ b/.github/workflows/linux-release-build.yml @@ -39,6 +39,10 @@ jobs: with: tool-cache: false + # Bug: https://github.com/actions/checkout/issues/1153 + - name: Remove zombie lock file + run: rm -f /home/ubuntu/actions-runner/_work/desktop/desktop/.git/modules/l10n/index.lock + - name: Checkout repository uses: actions/checkout@v4 with: diff --git a/src/browser/base/zen-components/ZenViewSplitter.mjs b/src/browser/base/zen-components/ZenViewSplitter.mjs index 97d76ffb7..b805cde16 100644 --- a/src/browser/base/zen-components/ZenViewSplitter.mjs +++ b/src/browser/base/zen-components/ZenViewSplitter.mjs @@ -223,7 +223,8 @@ class ZenViewSplitter extends ZenDOMOperatedFeature { this.fakeBrowser.id = 'zen-split-view-fake-browser'; gBrowser.tabbox.appendChild(this.fakeBrowser); this.fakeBrowser.style.setProperty('--zen-split-view-fake-icon', `url(${draggedTab.getAttribute('image')})`); - Promise.all([ + draggedTab._visuallySelected = true; + this._finishAllAnimatingPromise = Promise.all([ gZenUIManager.motion.animate( gBrowser.tabbox, { @@ -245,7 +246,9 @@ class ZenViewSplitter extends ZenDOMOperatedFeature { easing: 'ease-out', } ), - ]).then(() => { + ]); + this._finishAllAnimatingPromise.then(() => { + this._canDrop = true; draggedTab._visuallySelected = true; }); }, 100); @@ -1588,7 +1591,7 @@ class ZenViewSplitter extends ZenDOMOperatedFeature { this.splitTabs([draggedTab, droppedOnTab], gridType, 1); } } - window.requestAnimationFrame(() => { + this._finishAllAnimatingPromise.then(() => { this._maybeRemoveFakeBrowser(false); });