From 1ea533da24c09a071012a623698fda3b1d091a6d Mon Sep 17 00:00:00 2001 From: "mr. m" Date: Mon, 25 Aug 2025 00:02:48 +0200 Subject: [PATCH] feat: Improved update animation rendering, b=no-bug, c=common, folders --- src/zen/common/ZenStartup.mjs | 36 +++++++++++++++++++--------------- src/zen/folders/ZenFolders.mjs | 1 + 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/src/zen/common/ZenStartup.mjs b/src/zen/common/ZenStartup.mjs index 60778af53..39532b452 100644 --- a/src/zen/common/ZenStartup.mjs +++ b/src/zen/common/ZenStartup.mjs @@ -173,26 +173,30 @@ return; } Services.prefs.setStringPref('zen.updates.last-build-id', appID); - if (gReduceMotion) return; await gZenWorkspaces.promiseInitialized; const appWrapper = document.getElementById('zen-main-app-wrapper'); const element = document.createElement('div'); element.id = 'zen-update-animation'; - appWrapper.appendChild(element); - gZenUIManager.motion - .animate( - '#zen-update-animation', - { - top: ['100%', '-50%'], - opacity: [0.5, 1], - }, - { - duration: 0.35, - } - ) - .then(() => { - element.remove(); - }); + requestIdleCallback(() => { + if (gReduceMotion) { + return; + } + appWrapper.appendChild(element); + gZenUIManager.motion + .animate( + '#zen-update-animation', + { + top: ['100%', '-50%'], + opacity: [0.5, 1], + }, + { + duration: 0.35, + } + ) + .then(() => { + element.remove(); + }); + }); } })(); diff --git a/src/zen/folders/ZenFolders.mjs b/src/zen/folders/ZenFolders.mjs index 162c258c1..e4aaacbbf 100644 --- a/src/zen/folders/ZenFolders.mjs +++ b/src/zen/folders/ZenFolders.mjs @@ -685,6 +685,7 @@ } const canInsertBefore = + !isFromToolbar && !triggerTab.hasAttribute('zen-essential') && !triggerTab?.group?.hasAttribute('split-view-group') && this.canDropElement({ isZenFolder: true }, triggerTab);