qs: improve bar's animations

This commit is contained in:
2026-03-21 07:13:56 +01:00
parent b677b8aa49
commit 190570da7b
4 changed files with 22 additions and 23 deletions
@@ -23,7 +23,8 @@ Item {
readonly property real viewportHeight: outputHeight > 0 ? outputHeight : height readonly property real viewportHeight: outputHeight > 0 ? outputHeight : height
readonly property real scrollProgress: { readonly property real scrollProgress: {
if (workspaceCount <= 1 || focusedIndex < 0) if (workspaceCount <= 1 || focusedIndex < 0)
return 0.5; // Center return 0.5;
// Center
return Math.max(0, Math.min(1, (focusedIndex - 1) / (workspaceCount - 1))); return Math.max(0, Math.min(1, (focusedIndex - 1) / (workspaceCount - 1)));
} }
@@ -142,6 +143,7 @@ Item {
Behavior on blur { Behavior on blur {
NumberAnimation { NumberAnimation {
duration: Style.animationSlow duration: Style.animationSlow
easing.type: Easing.InOutCubic
} }
} }
@@ -149,6 +151,7 @@ Item {
Behavior on colorization { Behavior on colorization {
NumberAnimation { NumberAnimation {
duration: Style.animationSlow duration: Style.animationSlow
easing.type: Easing.InOutCubic
} }
} }
@@ -31,6 +31,21 @@ Variants {
top: true top: true
} }
Rectangle {
anchors.fill: parent
color: Colors.mSurface
opacity: BarService.focusMode ? 1 : 0
Behavior on opacity {
NumberAnimation {
duration: Style.animationSlow
easing.type: Easing.InOutCubic
}
}
}
Rectangle { Rectangle {
id: barBackground id: barBackground
@@ -39,30 +54,12 @@ Variants {
gradient: Gradient { gradient: Gradient {
GradientStop { GradientStop {
position: 0 position: 0
color: Qt.rgba(Colors.mSurface.r, Colors.mSurface.g, Colors.mSurface.b, BarService.focusMode ? 1 : 0.8) color: Qt.rgba(Colors.mSurface.r, Colors.mSurface.g, Colors.mSurface.b, 0.8)
Behavior on color {
ColorAnimation {
duration: Style.animationSlowest
easing.type: Easing.InOutCubic
}
}
} }
GradientStop { GradientStop {
position: 1 position: 1
color: Qt.rgba(Colors.mSurface.r, Colors.mSurface.g, Colors.mSurface.b, BarService.focusMode ? 1 : 0) color: Qt.rgba(Colors.mSurface.r, Colors.mSurface.g, Colors.mSurface.b, 0)
Behavior on color {
ColorAnimation {
duration: Style.animationSlowest
easing.type: Easing.InOutCubic
}
}
} }
} }
@@ -173,7 +173,7 @@ Scope {
Behavior on opacity { Behavior on opacity {
NumberAnimation { NumberAnimation {
duration: Style.animationSlowest duration: Style.animationSlow
easing.type: Easing.InOutCubic easing.type: Easing.InOutCubic
} }
@@ -1,4 +1,3 @@
import QtQml
import QtQuick import QtQuick
import Quickshell import Quickshell
import Quickshell.Io import Quickshell.Io