diff options
| author | Danilo M. <danix@danix.xyz> | 2026-10-23 19:32:50 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-10-23 19:32:50 +0200 |
| commit | 540aa76b6088025dfca284a731002cec6b6c607c (patch) | |
| tree | 83bde744f14c8368b6ceee11e1d57ca2fa9c40a8 /desktop/companion/Mood.js | |
| parent | 588d78a19cac279b240588f47c26442d5abf3a12 (diff) | |
| download | quickshell-540aa76b6088025dfca284a731002cec6b6c607c.tar.gz quickshell-540aa76b6088025dfca284a731002cec6b6c607c.zip | |
companion: wave goodbye on hide
SUPER+\ now plays a short goodbye instead of dropping her at once: she cycles wave-l and wave-r around the existing wave for a sway, then the normal drop. One hide in four she also says a bye line, non-forced so the usual 30 s cooldown applies; the hold matches what showed, 2 s with a line and 1 s silent.
The sway is klein edits of dress/wave rather than base, so the arm stays up and only the hand moves; the leotard twins come from their dress frames. The leotard rerolled to seed 7 because the first seed left a faint alpha fringe that widened the canvas and made the flip jitter.
Fullscreen, the lock screen and the monitor hop keep their own exits and do not wave.
Also carries the pending onFocusedChanged guard: with no focused monitor, or already away, she moves at once rather than waiting for an exit that will never settle.
Diffstat (limited to 'desktop/companion/Mood.js')
| -rw-r--r-- | desktop/companion/Mood.js | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/desktop/companion/Mood.js b/desktop/companion/Mood.js index 409a958..e7aaea1 100644 --- a/desktop/companion/Mood.js +++ b/desktop/companion/Mood.js @@ -28,6 +28,8 @@ var T = { monologueCooldown: 3600000, destruct: 1000, // the glow and the flash; the sprite is hidden under it scorched: 3000, + goodbye: 2000, // waving goodbye with a line, enough to read it + goodbyeSilent: 1000, // waving goodbye with nothing to read admireLook: 1500, // turned to the wallpaper, before the blush admireBlush: 3000, admireCooldown: 180000, @@ -53,6 +55,9 @@ function clickFrame(count) { // The spec's priority table, top to bottom: the first that applies wins. // idle is 0 awake, 1 bored, 2 yawning, 3 lying down. function pick(s) { + // The user hid her: the goodbye outranks whatever she was doing. The + // frame here is a placeholder; Companion.qml cycles the wave frames. + if (s.leaving) return st("bye", "wave"); const since = s.destructAt ? s.now - s.destructAt : Infinity; if (since < T.destruct) return st("destruct", "base"); if (since < T.destruct + T.scorched) return st("scorched", "scorched"); |
