diff options
| author | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-08-10 17:17:51 +1000 |
|---|---|---|
| committer | 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> | 2025-08-10 17:17:51 +1000 |
| commit | ba1c6fda43c44237a4fe5db092d6441eb85ef2dc (patch) | |
| tree | 6172ab70ba69584e2e7c785f8336ddeb60f8e761 /modules/lock/LockSurface.qml | |
| parent | Merge branch 'main' into new-lock (diff) | |
| download | caelestia-shell-ba1c6fda43c44237a4fe5db092d6441eb85ef2dc.tar.gz caelestia-shell-ba1c6fda43c44237a4fe5db092d6441eb85ef2dc.tar.bz2 caelestia-shell-ba1c6fda43c44237a4fe5db092d6441eb85ef2dc.zip | |
lock: add content + better unlock anim
Diffstat (limited to 'modules/lock/LockSurface.qml')
| -rw-r--r-- | modules/lock/LockSurface.qml | 55 |
1 files changed, 46 insertions, 9 deletions
diff --git a/modules/lock/LockSurface.qml b/modules/lock/LockSurface.qml index 7e3f593..3b6b86c 100644 --- a/modules/lock/LockSurface.qml +++ b/modules/lock/LockSurface.qml @@ -15,10 +15,6 @@ WlSessionLockSurface { property bool locked - function unlock(): void { - lock.unlocked = true; - } - Component.onCompleted: locked = true color: "transparent" @@ -40,8 +36,8 @@ WlSessionLockSurface { target: lockBg properties: "implicitWidth,implicitHeight" to: lockBg.size - duration: Appearance.anim.durations.expressiveFastSpatial - easing.bezierCurve: Appearance.anim.curves.expressiveFastSpatial + duration: Appearance.anim.durations.expressiveDefaultSpatial + easing.bezierCurve: Appearance.anim.curves.expressiveDefaultSpatial } Anim { target: lockBg @@ -49,9 +45,31 @@ WlSessionLockSurface { to: lockBg.size / 4 } Anim { - targets: [background, lockBg] + target: content + property: "opacity" + to: 0 + duration: Appearance.anim.durations.small + } + Anim { + target: lockIcon + property: "opacity" + to: 1 + } + Anim { + target: background property: "opacity" to: 0 + duration: Appearance.anim.durations.large + } + SequentialAnimation { + PauseAnimation { + duration: Appearance.anim.durations.small + } + Anim { + target: lockBg + property: "opacity" + to: 0 + } } } PropertyAction { @@ -82,7 +100,7 @@ WlSessionLockSurface { Anim { target: lockBg property: "rotation" - to: 180 + to: 360 duration: Appearance.anim.durations.expressiveFastSpatial easing.bezierCurve: Appearance.anim.curves.standardAccel } @@ -91,10 +109,20 @@ WlSessionLockSurface { Anim { target: lockIcon property: "rotation" - to: 180 + to: 360 easing.bezierCurve: Appearance.anim.curves.standardDecel } Anim { + target: lockIcon + property: "opacity" + to: 0 + } + Anim { + target: content + property: "opacity" + to: 1 + } + Anim { target: lockBg property: "radius" to: Appearance.rounding.large @@ -147,6 +175,7 @@ WlSessionLockSurface { color: Colours.tPalette.m3surface radius: size / 4 + rotation: 180 scale: 0 Elevation { @@ -164,6 +193,14 @@ WlSessionLockSurface { text: "lock" font.pointSize: Appearance.font.size.extraLarge * 4 font.bold: true + rotation: 180 + } + + Content { + id: content + + lock: root + opacity: 0 } } |