From b5883441df13257fd34005e97c62b1862113a048 Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Sat, 13 Sep 2025 10:57:29 +1000 Subject: launcher: fix anim Fixes #607 --- modules/launcher/Wrapper.qml | 45 ++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 41 insertions(+), 4 deletions(-) (limited to 'modules') diff --git a/modules/launcher/Wrapper.qml b/modules/launcher/Wrapper.qml index 299828f..51354c2 100644 --- a/modules/launcher/Wrapper.qml +++ b/modules/launcher/Wrapper.qml @@ -20,6 +20,7 @@ Item { onShouldBeActiveChanged: { if (shouldBeActive) { + timer.stop(); hideAnim.stop(); showAnim.start(); } else { @@ -57,16 +58,52 @@ Item { } } + Connections { + target: Config.launcher + + function onEnabledChanged(): void { + timer.start(); + } + + function onMaxShownChanged(): void { + timer.start(); + } + } + + Connections { + target: DesktopEntries.applications + + function onValuesChanged(): void { + if (DesktopEntries.applications.values.length < Config.launcher.maxShown) + timer.start(); + } + } + + Timer { + id: timer + + interval: Appearance.anim.durations.extraLarge + onRunningChanged: { + if (running) { + content.visible = false; + content.active = true; + } else { + root.contentHeight = content.implicitHeight; + content.active = Qt.binding(() => root.shouldBeActive || root.visible); + content.visible = true; + } + } + } + Loader { id: content anchors.top: parent.top anchors.horizontalCenter: parent.horizontalCenter - Component.onCompleted: { - root.contentHeight = implicitHeight; - active = Qt.binding(() => root.shouldBeActive || root.visible); - } + visible: false + active: false + Component.onCompleted: timer.start() sourceComponent: Content { visibilities: root.visibilities -- cgit v1.2.3-freya