aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/companion/Companion.qml
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-23 15:10:19 +0200
committerDanilo M. <danix@danix.xyz>2026-10-23 15:10:19 +0200
commit5e506270a8e5c891070672b60b7a397a4b1aec1e (patch)
tree29f876246c1317b28e8e50a63c47343f6efc60ec /desktop/companion/Companion.qml
parenta162d1263692626e4731354764c53d37ad03fb28 (diff)
downloadquickshell-5e506270a8e5c891070672b60b7a397a4b1aec1e.tar.gz
quickshell-5e506270a8e5c891070672b60b7a397a4b1aec1e.zip
companion: shoved for a moment, then mad beside the balloon
The shoved frame held for as long as a balloon stayed, which read as her stumbling for ten seconds. It now lasts T.shoveHold (1.2 s), then she is mad beside the balloon until it goes. shovedAt is reset to 0 when the shove ends and 0 reads as the shove's first instant, so the binding cannot show mad for a tick before the handler stamps the time. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop/companion/Companion.qml')
-rw-r--r--desktop/companion/Companion.qml7
1 files changed, 6 insertions, 1 deletions
diff --git a/desktop/companion/Companion.qml b/desktop/companion/Companion.qml
index 7f740a3..0a1360f 100644
--- a/desktop/companion/Companion.qml
+++ b/desktop/companion/Companion.qml
@@ -143,12 +143,17 @@ PanelWindow {
return (Notify.queue || []).some(n => NC.shown(Notify.config, n, Notify.dnd,
Notify.drawerOpen, Notify.snoozeUntil, root.now));
}
- onShovedChanged: if (root.shoved) root.say("shoved")
+ property double shovedAt: 0
+ onShovedChanged: {
+ root.shovedAt = root.shoved ? Date.now() : 0;
+ if (root.shoved) root.say("shoved");
+ }
// --- state ----------------------------------------------------------
readonly property var mood: Mood.pick({
now: root.now, destructAt: root.destructAt, dodging: root.dodging, shoved: root.shoved,
+ shovedAt: root.shovedAt,
recording: root.asst.recording, busy: root.asst.busy, repliedAt: root.repliedAt,
clicks: root.clicks, mockAt: root.mockAt, typingAt: root.typingAt, wakeAt: root.wakeAt,
monologue: root.monologue, idle: root.idle,