Feat: replaced duplicate animation style for processing prompt indicator

This commit is contained in:
Nicole 2026-09-03 21:44:24 +02:00
parent 4e57a4d730
commit fdc0066cab

View file

@ -558,30 +558,39 @@ Rectangle {
} }
// Streaming indicator before first content: the tumbling hex // Streaming indicator before first content: a plain status
// sphere (same small config as the footer status row) with a // label breathing toward the accent — same 750 ms cadence as
// plain status label. // the tool chip's in-flight pulse.
Row { Text {
id: promptRow id: promptRow
visible: isStreaming && content.length === 0 && thinking.length === 0 visible: isStreaming && content.length === 0 && thinking.length === 0
spacing: 8 text: "Processing prompt"
font.pixelSize: 11
HexSphereLogo { // 0 → 1 → 0 while the label shows; lerps the color toward
radius: 11 // the accent (k = 0.55, matching breatheColor on the chips).
strokeWidth: 1.5 property real breathe: 0
subdivisions: 1 SequentialAnimation on breathe {
yawRate: 20 running: promptRow.visible
pitchRate: 8 loops: Animation.Infinite
interactive: false NumberAnimation {
anchors.verticalCenter: parent.verticalCenter from: 0; to: 1; duration: 750
visible: promptRow.visible easing.type: Easing.InOutSine
}
NumberAnimation {
from: 1; to: 0; duration: 750
easing.type: Easing.InOutSine
}
} }
color: {
Text { var k = breathe * 0.55;
anchors.verticalCenter: parent.verticalCenter var base = Theme.surfaceVariantText;
text: "Processing prompt" var accent = Theme.primary;
color: Theme.surfaceVariantText return Qt.rgba(
font.pixelSize: 11 base.r + (accent.r - base.r) * k,
base.g + (accent.g - base.g) * k,
base.b + (accent.b - base.b) * k,
1);
} }
} }