aboutsummaryrefslogtreecommitdiffstats
path: root/desktop/companion/Lines.js
AgeCommit message (Collapse)AuthorFilesLines
13 hourscompanion: artist and groove linesDanilo M.1-16/+48
Artist keys match as a case-insensitive substring of the MPRIS artist, so collaborations and feat. credits still hit; the cost is a short key over-matching, marked as a ponytail ceiling. appMap/appList take their defaults so the settings page can serve artists with the same helpers. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
13 hourscompanion: sing when the Sony headphones connectDanilo M.1-0/+1
She now reacts to the headphones connecting with a short singing pose: eyes shut, blindfold gone, mouth wide open, headphones on, a few musical notes. The frames are new klein edits in frames.txt (dress/sing from dress/base, leotard/sing from dress/sing), so a post-self-destruct sing has its own art. Detection is the island's rule (StatusPill.qml): by model prefix, since BlueZ gives no class that says "headphones". The device's BlueZ Name is WH-CH720N, which the alias does not affect. The reaction is a one-shot hold in Mood.js (singHold, 4 s), placed after wave like the other event reactions. A 4 s startup grace keeps a shell start with the headphones already on from counting as a connection, since Bluetooth reads empty for about 2 s.
13 hourscompanion: wave goodbye on hideDanilo M.1-0/+1
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.
15 hourscompanion: editable per-app lines in a settings pageDanilo M.1-18/+67
Her per-app lines were hardcoded in Lines.js under app:<class>. They now live in Prefs.companionApps once edited and fall back to Lines.js until then, read live by Companion.qml so a save needs no restart. The new Companion phrases page does full CRUD on apps and their phrases, with a draft, SaveBar and Reset to the built-in set, mirroring Ask presets. Companion settings move out of Desktop into their own Companion group.
16 hourscompanion: blushes at a listed wallpaper on an empty workspaceDanilo M.1-0/+1
Checked on switching workspace or closing a window, and whenever she stops being away, which covers being shown, a remap, a hop to another monitor, a dodge and fullscreen. The 3 minute cooldown keeps workspace flicking from repeating it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
17 hourscompanion: a remark for the program in front of herDanilo M.1-0/+17
The focused window's class, from Hyprland's activewindow event, picks a line from Lines.js keyed app:<class>. The event fires on every title change too, so she reacts only when the class changes, and a third of the time, under the existing 30 s line cooldown so alt-tabbing does not make her chatter. Classes come from the window rules in the live config; one without lines says nothing. Lines only, no frames of her own yet. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
18 hourscompanion: her lines and the opening monologueDanilo M.1-0/+45
Fixed English lines per reaction, terse in the game's register, and the opening monologue split at its sentences so each fills one bubble. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>