statusLineBrandFadeT function
The pi brand-mark fade tween: 0.0 = fully idle-dim, 1.0 = fully lit,
quantized to frameMs frames across durationMs (omp: 450 ms / 40 ms,
11 sampled frames + settle). changedAgoMs is the time since the last
idle↔working flip (null = static: lit decides). Pure — the host
owns the clock.
Implementation
double statusLineBrandFadeT({
required bool lit,
required int? changedAgoMs,
int durationMs = 450,
int frameMs = 40,
}) {
if (changedAgoMs == null || changedAgoMs >= durationMs) {
return lit ? 1.0 : 0.0;
}
final frames = durationMs ~/ frameMs;
if (frames <= 0) {
// Degenerate tuning (frameMs > durationMs): no tween room - snap.
return lit ? 1.0 : 0.0;
}
final t = (changedAgoMs ~/ frameMs) / frames;
return lit ? t : 1.0 - t;
}