Variables | |
| constexpr int | MinAnimationDurationMs = 50 |
| Minimum animation duration in milliseconds. | |
| constexpr int | MaxAnimationDurationMs = 2000 |
| Maximum animation duration in milliseconds. | |
| constexpr int | DefaultAnimationDurationMs = 150 |
| Default animation duration in milliseconds, used as the fallback at startup before settings are loaded from the daemon. | |
| constexpr int | MinAnimationStaggerIntervalMs = 10 |
| Minimum stagger interval between sequenced animations in milliseconds. | |
| constexpr int | MaxAnimationStaggerIntervalMs = 200 |
| Maximum stagger interval between sequenced animations in milliseconds. | |
| constexpr float | MaxShaderTimeDeltaSeconds = 0.1f |
Hard ceiling on the per-frame iTimeDelta pushed into shaders, in seconds. | |
|
constexpr |
Default animation duration in milliseconds, used as the fallback at startup before settings are loaded from the daemon.
150 ms is short enough to feel snappy on legitimate rapid window churn but long enough that a user with a fresh install sees the transition rather than what looks like a hard cut. MUST sit within [MinAnimationDurationMs, MaxAnimationDurationMs] so an unconditional init through this constant is structurally safe — settings reload further refines it.
|
constexpr |
Maximum animation duration in milliseconds.
Two seconds covers every reasonable use case (deliberate, drawn-out OSD reveals; slow-motion debugging) without letting a misconfigured tree freeze a popup for an unreasonable interval.
|
constexpr |
Maximum stagger interval between sequenced animations in milliseconds.
200 ms × N items is enough to feel deliberate without making large lists glacial.
|
constexpr |
Hard ceiling on the per-frame iTimeDelta pushed into shaders, in seconds.
Both runtimes (the daemon's overlay shader update path and the surface-animator's compositor-side push) clamp the steady-clock frame delta against this so a sleep/resume hiccup, GC stall, or scheduler glitch does not blast a multi-second jump into shaders that integrate iTimeDelta (sparkle drift, particle motion, noise advance). 100 ms is generous: at the worst-cap a single tick represents 6 frames worth of motion at 60 Hz, beyond which the effect "skips" rather than blurring through unrealistic motion. Pinned in this header so a future bump propagates to BOTH runtimes without one falling out of sync.
|
constexpr |
Minimum animation duration in milliseconds.
Below ~50 ms the transition is so brief the user perceives it as a snap.
|
constexpr |
Minimum stagger interval between sequenced animations in milliseconds.
Below 10 ms the staggering blurs into a single simultaneous burst.